Il momento che tutti nella comunità di Laravel stavano aspettando è finalmente arrivato! Laravel Horizon è il software che permette di dare alle code una svolta decisiva con una bellissima dashboard e una configurazione code-driven.

“Spesso mi trovo sulla console del server di produzione cercando di riavviare job falliti o bloccati nelle code tramite la cli di redis. In generale, le code di Laravel sono fantastiche e funzionano alla perfezione il più delle volte, comunque, quando i messaggi falliscono, ricontrollare le code può essere un’operazione complicata”.

A parte tutto, dite la verità, non vi piacerebbero un po’ di metriche sulla performance delle code?

Laravel Horizon è stato progettato per facilitare il monitoraggio delle code da un’interfaccia web e ricevere notifiche quando qualcosa va storto.

Taylor Otwell, il creatore di Laravel, ci spiega perché Laravel Horizon è stato realizzato:   contenuto tratto da Laravel News

“Ho creato Horizon per togliermi uno sfizio. Ho bisogno di vedere a fondo quello che succede nelle mie code, mole di dati, performance, tempi di attesa, errori. E, quando un cliente ha un problema, Horizon mi permette velocemente di trovare il job che crea l’errore!” 

Funzionalità principali

Ecco un elenco delle funzionalità più importanti di Laravel Horizon:

  • Auto-balancing
  • Configurazione Code-Driven
  • Dashboards e Metriche
  • Queue monitoring
  • Gestione job falliti
  • Notifiche
  • Open-Source Software

Auto-balancing

Horizon bilancerà gli workers che lavorano sulle code. Quando una coda diventa carica, Horizon si rende conto se qualche altro worker è disponibile e lo fa lavorare sulla coda che ha bisogno di aiuto.

Configurazione Code-Driven

Laravel Horizon usa una configurazione code-driven, che è ottimo perché potrai “versionarla” nel tuo progetto!

Dashboard e Metriche

Controlla le tue code in tempo reale con le metriche sulla dashboard. Le metriche ti aiutano a monitorare cose come le performance, le statistiche e le quantità di dati.

Queue Monitoring

Con Laravel Horizon puoi taggare i job e monitorarli con una semplice dashboard. Il monitoring ti permetterà inoltre di isolare problemi di utilizzo in base alle tue necessità.

Gestione Job Falliti

La maggior parte di quelli che hanno utilizzato le code con Laravel hanno dovuto accedere tramite ssh sul server e riavviare manualmente i job falliti. Laravel Horizon vi faciliterà questa operazione, tramite la funzionalità di ricerca e il riavvio dei job.

Notifiche

Quando una coda si sta per sovraccaricare, Laravel Horizon è in grado di notificarti il problema, permettendoti di intervenire molto più velocemente. Io ad esempio ho impostato un monitoring personalizzato per ricevere notifiche quando ci sono problemi, ma Laravel Horizon rende più facile impostare le notifiche senza dover impostare monitoring personalizzati.

Open Source

Secondo me, il punto di forza di Laravel Horizon è che la versione free sarà 100% software open source. Potrai accedere al codice sorgente e contribuire se trovi un bug o se trovi utile integrare qualche funzionalità.

In conclusione

Laravel Horizon è un’emozionante novità nell’ecosistema Laravel ed è una soluzione necessaria a un problema molto comune riguardo l’utilizzo delle code con Laravel. Personalmente, non vedo l’ora di installare Horizon per lasciarne una nuova recensione una volta che lo avrò fatto girare nel mio ambiente di produzione!

Testo tradotto da Laravel News