我们正在运行 Laravel 7 和 Horizon 4.3.5。Horizon 与 Supervisor 一起运行。
我们配置了 10 个不同的队列,但负责一个特定队列的工作人员不断死亡,没有任何输出。top
重新启动 Horizon 后,我可以通过和ps
命令看到这些工作程序启动并运行了几秒钟。然后他们走了。
我检查了主管的stdout_logfile
:那里没有任何可疑之处。我可以看到与此队列相关的作业正在成功处理。每个工作人员在崩溃前恰好处理 2 个作业。
我检查了主管的stderr_logfile
,但它是空的。
Laravel 日志和failed_jobs
表格都是空的。
我什至检查过syslog
,但没有任何相关内容。
其他队列完全没有问题。只有这个特定的队列不断堆积:作业被应用程序推送到队列中,但在我重新启动 Horizon 之前从未处理过。
磁盘上有很多可用空间,可用 RAM,CPU 使用率很低。
工人命令:/usr/bin/php7.4 artisan horizon:work redis --delay=0 --memory=128 --queue=main --sleep=3 --timeout=1800 --tries=1 --supervisor=php01-Mexm:business