Спасибо за наводку в статье! Тоже изучаю сейчас этот вопрос. Оптимальное решение на мой взгляд: **В Crontab должна быть одна единственная запись:** ``` * * * * php /path/to/artisan schedule:run >>/dev/null 2>&1 ``` Все остальные команды должны запускаться уже в методе schedule класса Kernel. ``` $schedule->command('queue:work --once')->withoutOverlapping()->everyMinute(); ``` или ``` $schedule->command('queue:work --stop-when-empty')->withoutOverlapping()->everyMinute(); ``` > *4. Эта музыка будет вечной, если я заменю батарейки* > *Вы наверное заметили, что команда php artisan queue:work не закончилась после того как все задания в очереди выполнились. Она ждёт новых заданий! Вы можете прервать выполнение нажав Ctrl+C.* Обратите внимание на метод withoutOverlapping(). Это защита от [наложения задач](https://laravel.ru/docs/v5/artisan#%D0%B5%D1%89%D1%91-15).