LINUX.ORG.RU

Как правильно запустить очередь в Laravel с именованными очередями?

 , ,


1

1

Восстанавливаю сейчас к работе проект двухлетней давности.

В нем используется Laravel 5.5.45.

Сам забыл уже и PHP, и Laravel, и что там где там надо крутить.

Проблема вот в чем. Очереди в проекте настроены на драйвер database, используется MySQL (MariaDB). Таблицы jobs и failed_jobs созданы. Задания очереди успешно создаются, и появляются в таблице jobs. Для заданий предусмотрено 3 очереди:

- email
- phone
- telegram

В таблице jobs в поле queue видно соответствующее имя очереди.

Если согласно документации запустить очередь командой:

php artisan queue:work

то задания выполняться не будут, и поле attempt (количество попыток запуска) для всех заданий будет содержать значение 0.

В какой-то момент я нащупал, что если запустить команду:
php artisan queue:work --queue=telegram,default

то задания из очереди telegram таки выполнятся.

Но в документации я не нашел описания того, что для работы обработчика очереди требуется обязательно указывать имя очереди. Вроде как команда php artisan queue:work должна обрабатывать все очереди, но этого не происходит.

Вопрос: а какой командой таки можно запустить обработку всех именованных очередей? Я ее пропишу в Supervisor.

★★★★★

В config/queue.php можно указать какие очереди запускать по умолчанию. Способа запустить всё и сразу не существует, судя по коду.

NeOlip ★★ ()

о господе эта дрисня еще по таймеру запускается чтобы очереди разбирать. пхп до сих пор течет?

tz4678 ★★ ()
Ответ на: комментарий от tz4678

Нашел описание какого-то меморилика в какой-то версии PHP, и сделал выводы. Мозгов понять, что такие вещи сплошь и рядом хоть в ноде хоть в питоне, не хватило.

Xintrea ★★★★★ ()
Ответ на: комментарий от tz4678

Напишешь нам проект для работы с очередями на ноде в 97-м году, да еще и за пятьдесят долларов?

Igron ★★★★★ ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.