Обработка очереди Laravel 5.4 не работает

Сейчас я работаю в Laravel 5.4, настроил драйвер очереди как базу данных и создал миграцию заданий.

Контроллер

public function addUser(){
    $job = (new SendReminderEmail())->delay(Carbon::now()->addSeconds(200));
    dispatch($job);

    dd('Job Completed');
}

Очередь

public function handle()
{
    $input = ['name'=>'John','email'=>str_random(7),'password'=>Hash::make('general'),];
    DB::table('users')->insert($input);
}

Этот процесс успешно вставляет строку задания в таблицу заданий. Но на задержку исполнения я дал 200 секунд. Но он не срабатывает по прошествии времени.

Как это происходит? Требуется ли какая-либо конфигурация для работы очередей. ?


person Jishad    schedule 09.05.2017    source источник


Ответы (1)


Запустите php artisan queue:listen или php artisan queue:work. Их необходимо запустить, чтобы Artisan загрузил приложение и запустил в фоновом режиме проверку новых заданий в очереди, без этого единственный тип очереди, который будет работать, - это «синхронизация».

person Daniel Waters    schedule 03.08.2017