Добавьте параметр --once
, если хотите, чтобы работник завершил работу после выполнения одного задания:
$ php artisan queue:work --once
Начиная с версии 5.7, вы можете использовать --stop-when-empty
для обработки всех заданий в очереди и затем выйти:
$ php artisan queue:work --stop-when-empty
Документы: https://laravel.com/docs/5.7/queues#running-the-queue-worker
Примечание. Поведение по умолчанию изменилось в Laravel 5.3.Ранее рабочий обрабатывал одну работу и выходил;он продолжал работать, только если была использована опция --daemon
.После 5.3 это стало поведением по умолчанию, и --daemon
устарело.