Laravel 5.6:未使用Horizo​​n重试的排队作业失败

时间:2018-05-31 04:11:46

标签: laravel laravel-5 laravel-5.6 laravel-horizon

我目前正在我的Homestead VM上使用Redis运行Horizo​​n。

我有一个可排队的可邮寄示例,看起来有点像这样:

<?php

namespace App\Mail;

// ... imports ...

class WelcomeEmail extends Mailable implements ShouldQueue
{
    use Queueable, SerializesModels;

    public function build()
    {
        sleep(10);
        throw new \Exception("TEST JOB FAILED!");
    }
}

我正在使用Supervisor配置成功运行Horizion,如下所述:https://laravel.com/docs/5.6/horizon#deploying-horizon

[program:horizon]
process_name=%(program_name)s
command=php /home/ubuntu/code/myapp/artisan horizon
autostart=true
autorestart=true
user=vagrant
redirect_stderr=true
stdout_logfile=/home/ubuntu/code/myapp/storage/horizon.log

如上所述运行上述可邮寄时:

new WelcomeMail();

创建一个新作业,并按预期大约10秒后失败。

我的问题是Horizo​​n似乎没有重试失败的工作。默认情况下,它应该在90秒后重试(根据config/queue.php),重试3次(根据config/horizon.php)。

那么为什么失败的工作没有重试?

0 个答案:

没有答案