Header Ads Widget

Ticker

6/recent/ticker-posts

Ejemplo De Eventos Y Oyentes Usando Laravel 5.6

Los eventos y los oyentes son dos funciones increíbles para manejar el módulo de desacoplamiento en una aplicación web. Los eventos de laravel siguen el patrón del observador, lo que le permite suscribirse y escuchar varios eventos que ocurren en su aplicación. El Laravel usa Artisan para crear eventos y oyentes. Las clases de eventos generalmente se almacenan en el directorio app / Events , mientras que sus oyentes se almacenan en app / Listeners . Inicialmente, estas carpetas no existen, pero generan carpetas de eventos y oyentes utilizando los comandos de la consola Artisan.

¿Qué Son Los Eventos Y Oyentes De Laravel?

Un evento es una acción u ocurrencia que ocurrirá en su aplicación. La Aplicación generará eventos cuando algo suceda. Los oyentes escucharán ese evento y reaccionarán en consecuencia. Los oyentes es un programa o método que ejecutará alguna lógica u operación.

Vamos A Crear Eventos En Laravel 5.6

Crearemos un evento simple que activó un evento en los puntos finales de la API de llamada de reposo.

Paso 1: Vamos a generar TestEvent y TestEventListener archivo con el comando CLI.

php artisan event:generate

El comando anterior creará un archivo en la carpeta respectiva, como TestEvent en app/Eventsy TestEventListener en app/Listeners.

De forma alternativa, también puede crear el archivo anterior usando el siguiente comando:

Paso 2: Haremos una entrada en el app/Providers/EventServiceProvide.phparchivo, este archivo se usa para registrar todos los oyentes de eventos de su aplicación.

Ahora modificó el handle()método en un TestEventListener.phparchivo, que tendrá algún programa, que se ejecutará cuando ocurra el evento.

Cómo Dispach Event En Laravel

El evento de envío es muy fácil en laravel, solo necesita pasar el objeto de la clase de evento al Event::fire()método y el evento se activará cuando el testEvent()método llame.

Lo anterior sincronizará la manera de ejecutar la lógica, si el proceso es complejo y requiere mucho tiempo para ejecutarse en la ocurrencia del evento, entonces, en su mayoría, el desarrollador recomienda usar Laravel Queue para un proceso largo en segundo plano.

Cómo Usar El Evento Larevel En La Cola

Este paso ayudará a agregar eventos a la cola para que el método de los oyentes se procese en el fondo de la aplicación de laravel. Usaré el mismo EVENTO y lo agregaré a la cola de Laravel. Puede usar cualquier controlador de cola disponible como db, redist o beanstakd. más información de la cola de laravel de Create Queue and Run Jobs usando worker en Lumen / Laravel

Crearemos el archivo de trabajo usando el siguiente comando:

php artisan make:job MyJob

El comando anterior creará un jobs/MyJob.phparchivo y el archivo sería como el siguiente:

Cambiaremos el TestEventListener.phparchivo Listener y agregaremos la instancia de trabajo al método del controlador.

Despacharemos el evento en el archivo del controlador como se muestra a continuación:

Ahora ejecute la cola manualmente usando el siguiente comando, puede agregar la selección automática de trabajos usando supervisord, puede obtener más información Configurar supervisord en Linux para Laravel Jobs Queue

Publicar un comentario

0 Comentarios