Laravel Horizo​​n worker 不断无声地崩溃

Laravel Horizon worker constantly crashes silently

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

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

我查了主管的stdout_logfile:没什么可疑的。我可以看到与此队列相关的作业正在成功处理。每个工作人员在崩溃前处理 正好 2 个作业。

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

Laravel 日志和 failed_jobs table 都是空的。

我什至检查了 syslog,但没有相关内容。

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

磁盘上有很多空闲 space,空闲 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

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

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