Квест → Как хакнуть форму
Прошли: 77
Laravel имеет мощную систему очередей, и когда вы используете очереди, вам нужно запускать обработчики. Как правило, в рабочей среде вы используете команду queue:work
для их запуска, но это долгоживущие процессы, которые хранят загруженное состояние приложения в памяти. Таким образом, это означает, что после того, как вы внесете какие-либо изменения в код, вам нужно будет перезапустить их, чтобы они использовали новый код.
При локальной разработке это может стать обременительным. Если вы похожи на меня, вы можете забыть перезапустить воркеры. После чего, вы будете долго ломать голову, почему внесённые вами изменения не работают. Лично я потратил много времени на подобные "головоломки", и я думаю, что это то, что очень легко забыть. Чтобы сделать это проблемой прошлого, Laravel предоставляет команду queue:listen
, предназначенную для работы локально. Он не загружает состояние приложения в память, поэтому вам никогда не придется перезапускать очереди при внесении изменений в код.
Обе команды также эквивалентны.
php artisan queue:work --queue=high,default
Это то же самое, что:
php artisan queue:listen --queue=high,default
Однако имейте в виду, что вы никогда не должны использовать queue:listen
в продакшене, т.к. она значительно менее эффективна, чем команда queue:work
.