Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Laravel Pennant, gerçek zamanlı özellik işaretleme için Laravel Horizon ile kullanılabilir


Laravel Pennant, gerçek zamanlı özellik işaretleme için Laravel Horizon ile kullanılabilir


Laravel Pennant, uygulama özelliklerinin artımlı olarak sunulmasını ve yönetimini kolaylıkla sağlamak için tasarlanmış hafif bir özellik bayrağı paketidir. Bellek içi bir dizi, bir veritabanı ve Redis [2] gibi özel sürücüler dahil olmak üzere birden fazla depolama sürücüsünü destekler. Laravel Horizon, özellikle Laravel'in Redis kuyrukları için bir gösterge paneli ve izleme aracıdır ve kuyruk işleme ve iş durumu hakkında gerçek zamanlı bilgiler sağlar [1] [4].

Gerçek zamanlı özellik işaretleme için Laravel Horizon'lu Laravel Pennant'ın kullanımı ile ilgili olarak, iki paket arasında doğrudan bir entegrasyon veya yerleşik bağlantı yoktur. Laravel Horizon kuyruk izleme ve yönetimine odaklanırken, flama, bayraklara ve değerlendirme mantığını taşır. Ancak, her ikisini de kullanan bir çözüm mimar edebilirsiniz:

- Redis kullanan özel flama sürücüsü: Pennant, Redis'i arka uç deposu olarak kullanabilen özel özellikli bayrak sürücülerinin oluşturulmasına izin verir. Pennant için REDIS'te özellik bayraklarını depolayabilen ve güncelleyebilen Redis tabanlı bir özellik bayrağı sürücüsü uygulayabilirsiniz. Bu yaklaşım gerçek zamanlı güncellemeleri ve düşük gecikmeli bayrak kontrollerini kolaylaştırabilir [2].

- Kuyruk İşleri ve Ufuk İzleme: Uygulamalarınız güncellemelerde bayrakları eşzamansız olarak (örneğin, Redis'teki bayrakları değiştiren kuyruklu işler aracılığıyla) içeriyorsa, Laravel Horizon bu işleri gerçek zamanlı olarak izleyebilir. Bu kurulum, özellik bayraklarını değiştiren ancak doğrudan özellik bayrağı yönetimi arayüzü sağlamayan işlemleri izlemenizi sağlar.

- Etkinlikler ve Metrikler: Flama, özellikler kontrol edildiğinde veya çözüldüğünde etkinlikleri gönderir, bu da Laravel'in etkinlik sistemi aracılığıyla metrikleri veya bildirimleri dinleyebilir ve potansiyel olarak itebilir. Horizon, özellik bayrağı metriklerini doğal olarak görüntüleymezken, bu olayları Horizon'un kuyruk izlemesinin yanında toplayan özel gösterge tabloları veya izleme araçları oluşturabilirsiniz [2].

- Ufukta özellik bayrakları için gösterge paneli yok: Şu andan itibaren, Laravel flama özellikleri bayraklarını yönetmek veya görselleştirmek için resmi veya topluluk tarafından yapılmış bir ufuk panosu yoktur. Topluluktaki tartışmalar böyle bir araca olan ilgiyi göstermektedir, ancak henüz mevcut değildir [3].

Özetle, Laravel Pennant bir Laravel uygulamasında Laravel Horizon ile birlikte kullanılabilir, ancak farklı amaçlara hizmet ederler. Pennant, potansiyel olarak gerçek zamanlı performans için bir Redis arka uçla özellikli bayrakları yönetirken, Horizon Redis kuyruklarını ve işlerini izler. Flama ile gerçek zamanlı özellik işaretleme, Redis'in arka uç olarak ve Laravel'in etkinlik sisteminden yararlanarak elde edilebilir, ancak Horizon'un kendisi özellik bayrağı yönetimi veya görselleştirme özellikleri sağlamaz.

Bu nedenle, hem aynı uygulamada kullanabilir ve hatta Redis ve kuyruklar yoluyla dolaylı olarak etkileşime girebilirken, Laravel Flama ve Laravel Horizon gerçek zamanlı özellik işaretleme [1] [2] [3] [4] için kutudan entegre değildir.

Alıntılar:
[1] https://laravel.com/docs/11.x/horizon
[2] https://laravel.com/docs/12.x/pennant
[3] https://www.reddit.com/r/laravel/comments/13htk4p/laravel_pennant_management/
[4] https://www.youtube.com/watch?v=r3c_qbvahxa
[5] https://laravel-news.com/feature-flags-with-laravel-pennant
[6] https://www.honeybadger.io/blog/a-guide-to-feature-flags-in-laravel/
[7] https://wpwebinfotech.com/blog/laravel-pennant-guide/
[8] https://dev.to/saurabh-dhariwal/how-to-manage-feature-flags-with-pennant-in-2024-1phb