我正在运行Laravel 5.2
如何定义重试失败作业的延迟(以秒为单位)?也就是说,如果作业失败,并且我的——tries选项设置为3,那么这3次尝试之间的每次尝试应该有10秒的延迟。
我的当前配置是这样的:
command=php /home/forge/default/artisan queue:work beanstalkd --daemon --timeout=60 --sleep=10 --quiet --tries=3 --delay=10 --queue="default"
autostart=true
autorestart=true
user=forge
redirect_stderr=true
stdout_logfile=/home/forge/.forge/worker-41417.log
可以看到,我已经有了——delay=10,但是不起作用。失败的作业尝试一个接一个地执行。
任何想法?谢谢。
您可以手动发布它,这在5.2文档中有描述:
public function handle(Mailer $mailer)
{
if (condition) {
$this->release(10);
}
}