Saltar al contenido

Cómo ejecutar manualmente un trabajo de laravel / lumen usando la línea de comando

Solución:

ACTUALIZAR

Creé el paquete composer mxl / laravel-job que proporciona el comando Laravel para enviar trabajos desde la línea de comando:

$ composer require mxl/laravel-job
$ php artisan job:dispatch YourJob # for jobs in app/Jobs directory (AppJobs namespace)
$ php artisan job:dispatch 'PathToYourJob' # dispatch job by its full class name
$ php artisan job:dispatchNow YourJob # dispatch immediately
$ php artisan job:dispatch YourJob John 1990-01-01 # dispatch with parameters

El paquete también proporciona una forma de reducir la repetición mediante el uso de base Job clase y tiene FromParameters interfaz que permite implementar el análisis de parámetros de la línea de comandos y usar el trabajo desde el código PHP y la línea de comandos simultáneamente.

Lea más sobre sus características en la página del paquete de GitHub.

ANTIGUA RESPUESTA

Correr

php artisan make:command DispatchJob

para crear un comando artesanal especial que ejecute trabajos.

Abierto creado DispatchJob.php archivar y definir DispatchJob clase como esta:

class DispatchJob extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature="job:dispatch {job}";

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Dispatch job';

    /**
     * Execute the console command.
     *
     * @return mixed
     */
    public function handle()
    {
        $class="\App\Jobs\" . $this->argument('job');
        dispatch(new $class());
    }
}

Ahora deberías iniciar el trabajador de cola:

php artisan queue:work

y después de eso, puede ejecutar trabajos desde la línea de comando:

php artisan job:dispatch YourJobNameHere

Si está utilizando un QUEUE_DRIVER diferente a sincronizar y desea enviar una cola que ha creado antes, desde la carpeta de su proyecto ejecute el comando:

php artisan queue:work --queue=MyQueueName

Consulte este enlace para configurar un base de datos QUEUE_DRIVER

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *