когда я отправляю задание, оно вставляется только в базу данных и выполняется после того, как я вставлю другое. Поэтому, если я вставлю 10 заданий, 9 будет вставлено и выполнено, но 10-е будет зависать, пока я не отправлю еще одно. (Я использовал инструмент командной строки laravel tinker, чтобы выполнить тестирование, связанное с этим)
Вот задание:
<?php
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class Test implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
protected $t;
public function __construct($t)
{
$this->t = $t;
}
public function handle()
{
// inser $t into a table
}
}
А вот диспетчеризация задания:
\App\Jobs\Teste::dispatch('test1')
\App\Jobs\Teste::dispatch('test2')
В этом случае «test1» вставляется в базу данных и выполняется только после отправки «test2», а «test2» вставляется и выполняется только после отправки нового задания.
Я используюSupervisord и Laravel 6 LTS. Кто-нибудь знает, в чем может быть проблема?