Laravel Pennant to lekki pakiet flagi funkcji zaprojektowany tak, aby z łatwością umożliwić przyrostowe wdrażanie i zarządzanie funkcjami aplikacji. Obsługuje wiele sterowników pamięci, w tym tablicę w pamięci, bazę danych i niestandardowe sterowniki, takie jak Redis [2]. Z drugiej strony Laravel Horizon jest deską rozdzielczą i narzędziem monitorowania specjalnie dla kolejek Redis Laravel, zapewniającego wgląd w czasie rzeczywistym w przetwarzaniu kolejki i status zadania [1] [4].
Jeśli chodzi o użycie proporczyka Laravel z Laravel Horizon do flagowania funkcji w czasie rzeczywistym, nie ma bezpośredniej integracji ani wbudowanego połączenia między dwoma pakietami. Laravel Horizon koncentruje się na monitorowaniu i zarządzaniu kolejką, podczas gdy radzi sobie z flagi cech i ich logika oceny. Możesz jednak architektować rozwiązanie, które wykorzystuje oba:
- Niestandardowy sterownik proporczyka za pomocą Redis: Pnorek umożliwia tworzenie niestandardowych sterowników flagi funkcji, w tym takiego, który może używać Redis jako sklepu zaplecza. Możesz zaimplementować sterownik flagi funkcji oparty na Redis dla Pennant, który może przechowywać i aktualizować flagi funkcji w Redis. Takie podejście może ułatwić aktualizacje w czasie rzeczywistym i kontrole flagi o niskiej opóźnieniu [2].
- Zadania w kolejce i monitorowanie horyzontu: Jeśli aktualizuje się, że aktualizuje flagi asynchronicznie (na przykład za pośrednictwem zadań w kolejce, które modyfikują flagi w Redis), Laravel Horizon może monitorować te zadania w czasie rzeczywistym. Ta konfiguracja pozwala śledzić procesy, które zmieniają flagi funkcji, ale nie zapewnia bezpośredniego interfejsu zarządzania flagą funkcji.
- Wydarzenia i wskaźniki: Wysyłanie proporczyków Wydaje się, że funkcje są sprawdzane lub rozwiązywane, które można słuchać i potencjalnie popychać wskaźniki lub powiadomienia za pośrednictwem systemu zdarzeń Laravel. Chociaż Horizon nie wyświetla natywnie wskaźników flagi funkcji, możesz budować niestandardowe pulpity nawigacyjne lub narzędzia monitorujące, które agregują te zdarzenia wraz z monitorowaniem kolejki Horizon [2].
- Brak deski rozdzielczej flag funkcyjnych w horyzoncie: na razie nie ma oficjalnej ani zbudowanej społeczności deski rozdzielczej do zarządzania lub wizualizacji flag Feature Pennant. Dyskusje w społeczności wskazują na zainteresowanie takiego narzędzia, ale jeszcze nie istnieje [3].
Podsumowując, proporczyk Laravel może być używany wraz z Laravel Horizon w aplikacji Laravel, ale służą one różne cele. Pennant zarządza flagami funkcyjnymi, potencjalnie z backendem Redis dla wydajności w czasie rzeczywistym, a Horizon monitoruje kolejki i prace Redis. Funkcje funkcji w czasie rzeczywistym można osiągnąć za pomocą Redis jako backend i wykorzystując system zdarzeń Laravel, ale sam Horizon nie zapewnia możliwości zarządzania flagą ani wizualizacji.
Tak więc, chociaż możesz używać zarówno w tej samej aplikacji, a nawet mieć ich oddziaływanie pośrednio za pośrednictwem Redis i Kolej, Laravel Pennant i Laravel Horizon nie są zintegrowane po polu dla flagowania funkcji w czasie rzeczywistym [2] [3] [4].
Cytaty:
[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--laravel/
[7] https://wpwebinfotech.com/blog/Laravel-penant-Guide/
[8] https://dev.to/saurabh-dhariwal/how-to-manage-feature-flags-with-laravel-penant-on-2024-1phb