Laravel Pennant este un pachet de pavilion cu caracteristici ușoare conceput pentru a permite lansarea și gestionarea incrementală a funcțiilor de aplicație cu ușurință. Suporta mai multe drivere de stocare, inclusiv un tablou în memorie, o bază de date și drivere personalizate, cum ar fi Redis [2]. Laravel Horizon, pe de altă parte, este un tablou de bord și un instrument de monitorizare special pentru cozile Redis de la Laravel, oferind informații în timp real asupra procesării cozii și a statutului de muncă [1] [4].
În ceea ce privește utilizarea pennantului Laravel cu Laravel Horizon pentru semnalizare în timp real, nu există o integrare directă sau o conexiune încorporată între cele două pachete. Laravel Horizon se concentrează pe monitorizarea și gestionarea cozii, în timp ce Pennant mânere prezintă steaguri și logica lor de evaluare. Cu toate acestea, puteți arhitect o soluție care le folosește pe ambele:
- Driver Pennant personalizat folosind Redis: Pennant permite crearea de drivere de pavilion cu caracteristici personalizate, inclusiv unul care poate utiliza Redis ca magazin de backend. Puteți implementa un driver de pavilion de caracteristici bazat pe Redis pentru Pennant, care poate stoca și actualiza steaguri de caracteristici în Redis. Această abordare poate facilita actualizări în timp real și verificări de pavilion cu latență scăzută [2].
- Joburi de coadă și monitorizare a orizontului: Dacă actualizările aplicației dvs. prezintă steaguri asincron (de exemplu, prin intermediul lucrărilor în coadă care modifică steagurile în Redis), Laravel Horizon poate monitoriza aceste joburi în timp real. Această configurație vă permite să urmăriți procesele care schimbă steagurile caracteristicilor, dar nu oferă o interfață directă de gestionare a pavilionului.
- Evenimente și metrici: Pennant expediază evenimente atunci când caracteristicile sunt verificate sau rezolvate, pe care le -ați putea asculta și potențial să împingeți metrici sau notificări prin sistemul de evenimente Laravel. În timp ce Horizon nu afișează în mod nativ valori ale pavilionului, puteți construi tablouri de bord personalizate sau instrumente de monitorizare care agregă aceste evenimente alături de monitorizarea cozii Horizon [2].
- Niciun tablou de bord pentru steaguri de caracteristici în Horizon: De acum, nu există niciun tablou de bord oficial sau construit în comunitate pentru gestionarea sau vizualizarea steagurilor de caracteristici Laravel Pennant. Discuțiile din comunitate indică interesul pentru un astfel de instrument, dar nu există încă [3].
În rezumat, Laravel Pennant poate fi utilizat alături de Laravel Horizon într -o aplicație Laravel, dar servesc scopuri diferite. Pennant gestionează steaguri cu caracteristici, potențial cu un backend Redis pentru performanță în timp real, în timp ce Horizon monitorizează cozile și locurile de muncă Redis. Funcționarea în timp real cu pennant poate fi obținută folosind Redis ca backend și folosind sistemul de evenimente al Laravel, dar Horizon în sine nu oferă capacități de gestionare a steagurilor sau de vizualizare a steagurilor.
Astfel, în timp ce puteți utiliza atât în aceeași aplicație și chiar le puteți interacționa în mod indirect prin Redis și cozi, Laravel Pennant și Laravel Horizon nu sunt integrate din cutie pentru a semnaliza caracteristicile în timp real [1] [2] [3] [4].
Citări:
[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-lavel-pennant
[6] https://www.honeybadger.io/blog/a-guide-to-feature-flags-inravel/
[7] https://wpwebinfotech.com/blog/laravel-pennant-guide/
[8] https://dev.to/saurabh-dhariwal/how-to-manage-feature-flags-with-lauvel-pennant-in-2024-1phb