【问题标题】:queue:work delay between failed jobs队列:失败作业之间的工作延迟
【发布时间】:2017-02-23 06:26:18
【问题描述】:

我正在运行 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 但不起作用。失败的作业尝试一个接一个地执行。

有什么想法吗?谢谢。

【问题讨论】:

    标签: laravel queue beanstalkd


    【解决方案1】:

    您可以手动释放它,在 5.2 文档中有描述:

    public function handle(Mailer $mailer)
    {
        if (condition) {
            $this->release(10);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2018-08-16
      • 2022-08-13
      • 2011-08-26
      • 1970-01-01
      • 2017-12-02
      • 1970-01-01
      • 1970-01-01
      • 2012-08-02
      • 1970-01-01
      相关资源
      最近更新 更多