PHP 错误将作业推送到延迟队列中,同时使用 --tries=0

PHP error pushes Job in Delayed queue while --tries=0 is used

我正在使用 supervisor 在我的 lumen 5.2 设置上 运行 作业。我的主管会议。看起来像这样

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/app/artisan queue:work --
queue=server_level,app_level --tries=0 -vvv  --daemon
autostart=true
autorestart=true
user=web_user
numprocs=20
redirect_stderr=true
stdout_logfile=/var/www/app/storage/logs/worker.log

当作业因 PHP 错误而失败时,Lumen 会将其插入延迟队列并无限期地尝试 运行 它。我已经使用 --tries=0 并期望在出现任何错误时作业应该失败,但它会永远保持 re-running。

即使您没有指定 --tries 选项,它也会将值 0 作为默认值。这意味着工作将被无限期地尝试,直到他们成功。如果要阻止作业在失败后再次 运行,则将值设置为 1。

--tries=1