Я узнал об очередях ларавеллы отсюда: https://laravel.com/docs/5.6/queues.
У меня есть ситуация, когда в моем проекте не было никаких очередей, а работала только очередь по умолчанию. Теперь у меня есть две очереди: JobA и JobB. И я хочу установить приоритет JobB выше, чем JobA.
Чтобы прикрепить задания с очередями, которые я использовал:
->onQueue('jobA');
->onQueue('jobB');
В файле .env я добавил:
QUEUE_DRIVER=sync
А в queue.php это код:
return [
'default' => env('QUEUE_DRIVER', 'sync'),
'connections' => [
'sync' => [
'driver' => 'sync',
],
'database' => [
'driver' => 'database',
'table' => 'jobs',
'queue' => 'default',
'retry_after' => 90,
]
],
'failed' => [
'database' => env('DB_CONNECTION', 'mysql'),
'table' => 'failed_jobs',
],
];
И после внесения этих изменений я запускаю на сервере следующие команды:
php artisan queue:work --queue=jobB,jobA
php artisan queue:restart
Первая команда запускает все отложенные задания из указанной таблицы (таблицы заданий).
Но теперь, когда создаются новые рабочие места, как я узнаю, что они находятся в указанном порядке приоритетов? А также я проверил в таблице базы данных (таблица заданий), но имя очереди по умолчанию отображается.
Пожалуйста, дайте мне знать, что я делаю неправильно.
Спасибо