Я хочу создать очередь (AMAZON SQS), которая запускает задания только каждые X секунд.Таким образом, если вдруг будет отправлено 50 заданий, они окажутся в очереди.Затем слушатель очереди выполняет задание, что-то делает и ждет X секунд.После этого следующая работа вытягивается.Еще одна секундная пауза.И т. Д. И т. П.
Для прослушивателя очереди параметр режима сна определяет только то, как долго работник будет «спать», если нет новых доступных заданий.Поэтому он будет спать только в том случае, если в очереди ничего нет.
Или я должен просто поставить паузу (x) в своем коде PHP?
[править] Я только что протестировал метод снас FIFO и стандартной очередью AWS SQS, и это портит всю очередь.Внезапно задания (успешно) повторно отправляются 3 раза, после чего происходит переход в сбойное состояние.Более того, задержка, указанная в моем коде (3-4 минуты), была проигнорирована, вместо этого была взята одна минута
<?php
namespace App\Jobs;
use App\City;
class RetrieveStations extends Job
{
protected $cities;
/**
* Create a new job instance.
*
* @return void
*/
public function __construct ($cities)
{
$this->cities = $cities;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
// code here
doSomething()
sleep(X);
}
}