0

我们正在运行 Laravel 7 和 Horizo​​n 4.3.5。Horizo​​n 与 Supervisor 一起运行。

我们配置了 10 个不同的队列,但负责一个特定队列的工作人员不断死亡,没有任何输出。top重新启动 Horizo​​n 后,我可以通过和ps命令看到这些工作程序启动并运行了几秒钟。然后他们走了。

我检查了主管的stdout_logfile:那里没有任何可疑之处。我可以看到与此队列相关的作业正在成功处理。每个工作人员在崩溃前恰好处理 2 个作业。

我检查了主管的stderr_logfile,但它是空的。

Laravel 日志和failed_jobs表格都是空的。

我什至检查过syslog,但没有任何相关内容。

其他队列完全没有问题。只有这个特定的队列不断堆积:作业被应用程序推送到队列中,但在我重新启动 Horizo​​n 之前从未处理过。

磁盘上有很多可用空间,可用 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

4

1 回答 1

0

原来是内存不足的问题。我们在这个队列中有一项工作导致崩溃。

仍然不确定为什么日志是空的。可能没有足够的内存来记录任何内容。

于 2021-06-09T08:56:08.093 回答