PHP Profi

При разработке локально используйте queue:listen вместо queue:work Перевод

Use queue:listen instead of queue:work when developing locally

Laravel имеет мощную систему очередей, и когда вы используете очереди, вам нужно запускать обработчики. Как правило, в рабочей среде вы используете команду queue:work для их запуска, но это долгоживущие процессы, которые хранят загруженное состояние приложения в памяти. Таким образом, это означает, что после того, как вы внесете какие-либо изменения в код, вам нужно будет перезапустить их, чтобы они использовали новый код.

При локальной разработке это может стать обременительным. Если вы похожи на меня, вы можете забыть перезапустить воркеры. После чего, вы будете долго ломать голову, почему внесённые вами изменения не работают. Лично я потратил много времени на подобные "головоломки", и я думаю, что это то, что очень легко забыть. Чтобы сделать это проблемой прошлого, Laravel предоставляет команду queue:listen, предназначенную для работы локально. Он не загружает состояние приложения в память, поэтому вам никогда не придется перезапускать очереди при внесении изменений в код.

Обе команды также эквивалентны.

php artisan queue:work --queue=high,default

Это то же самое, что:

php artisan queue:listen --queue=high,default

Однако имейте в виду, что вы никогда не должны использовать queue:listen в продакшене, т.к. она значительно менее эффективна, чем команда queue:work.

2020-12-29 оригинал

Последние посты

Комментарии

авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий