Приоритет Laravel в очереди не работает - PullRequest
3 голосов
/ 19 марта 2019

Я узнал об очередях ларавеллы отсюда: 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

Первая команда запускает все отложенные задания из указанной таблицы (таблицы заданий). Но теперь, когда создаются новые рабочие места, как я узнаю, что они находятся в указанном порядке приоритетов? А также я проверил в таблице базы данных (таблица заданий), но имя очереди по умолчанию отображается.

Пожалуйста, дайте мне знать, что я делаю неправильно.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...