Laravel Horizon worker 不断无声地崩溃
Laravel Horizon worker constantly crashes silently
我们是 运行 Laravel 7 和 Horizon 4.3.5。 Horizon 与 Supervisor 一起运行。
我们配置了 10 个不同的队列,但是负责一个特定队列的工作人员不断死掉,没有任何输出。重新启动 Horizon 后,我可以通过 top
和 ps
命令看到这些工作人员启动并 运行 几秒钟。然后他们就走了。
我查了主管的stdout_logfile
:没什么可疑的。我可以看到与此队列相关的作业正在成功处理。每个工作人员在崩溃前处理 正好 2 个作业。
我查看了主管的 stderr_logfile
,但它是空的。
Laravel 日志和 failed_jobs
table 都是空的。
我什至检查了 syslog
,但没有相关内容。
其他队列完全没有问题。只有这个特定的队列不断堆积:应用程序正在将作业推送到队列,但在我重新启动 Horizon 之前从未处理过。
磁盘上有很多空闲 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
原来是内存不足问题。我们在这个队列中有一个作业导致崩溃。
仍然不确定为什么日志是空的。可能没有足够的内存来记录任何内容。
我们是 运行 Laravel 7 和 Horizon 4.3.5。 Horizon 与 Supervisor 一起运行。
我们配置了 10 个不同的队列,但是负责一个特定队列的工作人员不断死掉,没有任何输出。重新启动 Horizon 后,我可以通过 top
和 ps
命令看到这些工作人员启动并 运行 几秒钟。然后他们就走了。
我查了主管的stdout_logfile
:没什么可疑的。我可以看到与此队列相关的作业正在成功处理。每个工作人员在崩溃前处理 正好 2 个作业。
我查看了主管的 stderr_logfile
,但它是空的。
Laravel 日志和 failed_jobs
table 都是空的。
我什至检查了 syslog
,但没有相关内容。
其他队列完全没有问题。只有这个特定的队列不断堆积:应用程序正在将作业推送到队列,但在我重新启动 Horizon 之前从未处理过。
磁盘上有很多空闲 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
原来是内存不足问题。我们在这个队列中有一个作业导致崩溃。
仍然不确定为什么日志是空的。可能没有足够的内存来记录任何内容。