Корректная работа с очередью в Laravel
Создал класс коммандой
php artisan queue:tableСделал миграцию командой
php artisan migrateДобавил реализацию в класс очереди
namespace App\Jobs;
use App\Models\Candidates;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class ProcessPodcast implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
protected $user;
protected $data;
protected $count = 0;
public function __construct($user, $data)
{
$this->user = $user;
$this->data = $data;
}
public function handle()
{
info($this->user);
}
}
Добавил задания в очередь (внутри цикла)
ProcessPodcast::dispatch($user, $update_data_array)->onConnection('database')->onQueue('updateUserFromServices');Смотрю выполнение очереди в реальном времени командой
php artisan queue:work.
Вопрос: После срабатывания события ничего не пишет в консоле о выполненных заданий в очереди. В бд записались все очереди, но они не выполняются, почему?
Ответы (1 шт):
Автор решения: nuts.of_peanuts
→ Ссылка
Проверьте файл env в частности поле QUEUE_CONNECTION , там должно быть указано database