Tutorial de Laravel Horizon

Tutorial de Laravel Horizon
El paquete Laravel Horizon se utiliza para administrar las colas de Laravel. Proporciona un tablero atractivo para las colas. Este paquete permite a los usuarios configurar trabajos, generar análisis y monitorear los diferentes tipos de tareas relacionadas con la cola, incluido el tiempo de ejecución de trabajo, el fracaso, el rendimiento, etc. La información de configuración de todos los miembros del equipo del proyecto se almacena en un solo archivo que se puede controlar centralmente. Este paquete es de uso gratuito en el proyecto Laravel, pero no está incluido con el código central. Por lo tanto, primero debe instalar este paquete antes de usarlo. Este artículo le muestra algunas de las diferentes características del horizonte de Laravel y cómo instalar y ejecutar Laravel Horizon para manejar las colas de Laravel utilizando un bonito tablero.

Características:

A continuación se mencionan algunas características importantes de Laravel Horizon:

  • Es un paquete de código abierto
  • Muestra todas las colas e información de trabajo utilizando un hermoso tablero.
  • Proporciona información sobre trabajos pendientes, trabajos completos y trabajos fallidos.
  • Proporciona colas e información de trabajo utilizando métricas.
  • Monitorea los trabajos usando etiquetas.

Comandos de horizonte:

Algunos comandos de horizonte se mencionan a continuación para controlar el horizonte en ejecución.

El siguiente comando se usa para pausar el proceso de horizonte.

$ PHP Horizon Artisan: Pausa

El siguiente comando se utiliza para reanudar el proceso de horizonte pausado.

$ PHP Horizon Artisan: Continuar

El siguiente comando se utiliza para verificar el estado actual del proceso de horizonte.

$ PHP Horizon Artisan: Estado

El siguiente comando se utiliza para terminar el proceso de horizonte. El horizonte terminará después de completar todos los trabajos en ejecución.

$ PHP Horizon Artisan: Terminar

Instalar horizonte:

Prerrequisitos:

Debe instalar un nuevo proyecto utilizando la última versión de Laravel antes de comenzar los pasos de instalar el horizonte. Los pasos se muestran aquí usando Laravel 8.X.

Proceso de instalación:

Ejecute el siguiente comando desde el terminal para instalar el paquete Horizon con el compositor.

$ compositor requiere laravel/horizonte

Después de instalar Horizon, publique sus activos utilizando el comando Horizon: Instale Artisan:

$ PHP Horizon Artisan: instalar

predis El paquete se usa en este tutorial para usar Predis como cliente redis . Ejecute el siguiente comando para instalar el paquete Predis usando el compositor.

$ compositor requiere predis/predis

abierto base de datos.php archivo que se encuentra en la configuración carpeta y establecer el valor del cliente Como se muestra abajo.

'Client' => Env ('Redis_client', 'Predis'),

Ejecute el siguiente comando para borrar el caché antes de comenzar el horizonte.

$ PHP Cache artesanal: claro

Ejecute el siguiente comando para iniciar el horizonte.

$ PHP Horizon Artisan

La siguiente salida aparecerá si el horizonte está instalado y funciona correctamente.

Configuración basada en código:

Brinda la oportunidad de colaborar fácilmente con los miembros del equipo del proyecto cuando trabajan con colas. Se pueden establecer diferentes tipos de configuraciones utilizando la cola: comando artesanal de trabajo. config/horizonte.El archivo de configuración de PHP se utiliza para establecer diferentes configuraciones. Abierto horizonte.php Archivo para verificar la configuración predeterminada. El Configuración del trabajador de la cola La sección de este archivo contiene la siguiente configuración.

'predeterminados' => [
'Supervisor-1' => [
'Conexión' => 'Redis',
'cola' => ['predeterminado'],
'Balance' => 'Auto',
'maxprocesses' => 1,
'intenta' => 1,
'bonito' => 0,
],
],
'entornos' => [
'Producción' => [
'Supervisor-1' => [
'MaxProcesss' => 10,
'Balancemaxshift' => 1,
'Balancecooldown' => 3,
],
],
'local' => [
'Supervisor-1' => [
'MaxProcesss' => 3,
],
],
],

Aquí, el valor del saldo puede ser simple o auto o nulo. Cuando simple está configurado para el equilibrio, entonces el proceso se dividirá entre dos colas. Cuando el auto está listo para el equilibrio, entonces equilibra a los trabajadores de la cola en función de los trabajos restantes y el tiempo de espera promedio. Si alguna cola se ocupa, el horizonte buscará a los trabajadores disponibles y los transfiere a la cola para completar la tarea rápidamente. Si la opción de equilibrio se establece en NULL, el supervisor utilizará un solo grupo de trabajadores para procesar los trabajos en ejecución. Un supervisor se define aquí de forma predeterminada. Pero es posible asignar múltiples supervisores y la conexión particular, las colas, el mecanismo de equilibrio, etc. se puede definir para cada supervisor.

Si desea verificar la configuración predeterminada de el Redis Controlador de conexión luego abra la configuración/cola.php archivo. El Rehacer La sección de este archivo contiene la siguiente configuración.

'Redis' => [
'Driver' => 'Redis',
'Conexión' => 'predeterminado',
'Queue' => env ('Redis_queue', 'predeterminado'),
'RETRY_AFTER' => 90,
'block_for' => nulo,
],

Según la configuración, si no se asigna ningún trabajo, el estado de la cola permanecerá predeterminado. Aquí, el valor de RETRY_AFTER indica que la cola se reiniciará después de 90 segundos. Puede aumentar o disminuir los valores en función del requisito.

Panel de Abierto de Horizon:

Ejecute la siguiente URL desde el navegador para ver la información relacionada con la cola diferente desde el tablero del horizonte.

http: // localhost: 8000/horizon/

La siguiente salida aparecerá si el horizonte funciona correctamente. La salida muestra que el horizonte está activo ahora, un supervisor y una cola predeterminada se definen y aún no se asigna trabajo.

Modificar la sección predeterminada de el horizonte.php Archivo con el siguiente código.

'predeterminados' => [
'Supervisor-1' => [
'Conexión' => 'Redis',
'cola' => ['predeterminado', 'correo electrónico'],
'Tiempo de espera' => 30,
'dormir' => 3,
'Balance' => 'Auto',
'minprocesos' => 1,
'MaxProcesss' => 10,
'intenta' => 1,
'bonito' => 0,
],
],

Aquí, otra cola, correo electrónico está agregado, se acabó el tiempo está establecido en 30 segundos, dormir está establecido en 3 segundos, ministro se establece en 1 y MaxProceses está establecido en 10. Para activar estas configuraciones, debe detener el horizonte en ejecución, borrar el caché de configuración e iniciar el horizonte nuevamente. Prensa Ctrl+C Para terminar el horizonte de carrera. Ejecute los siguientes comandos para borrar el caché de configuración e iniciar el horizonte nuevamente.

$ PHP CONFIGURACIÓN ARTISAN: caché
$ PHP Horizon Artisan

Ejecute la siguiente URL desde el navegador nuevamente para verificar la salida en función de la nueva configuración.

http: // localhost: 8000/horizon/

La siguiente salida aparecerá en el navegador basado en la configuración actual.

Conclusión:

El proceso de instalación y la forma de ejecutar el horizonte se destacan principalmente en este tutorial. Debe crear un trabajo y asignarlo a una cola para conocer los usos detallados del horizonte que no está cubierto en este artículo. Este artículo ayudará a los usuarios de Laravel a instalar el horizonte y comenzar a trabajar con él.