加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 为什么supervisor faild启动程序?

发布时间:2020-12-13 13:07:34 所属栏目:PHP教程 来源:网络整理
导读:我正在使用Redis进行laravel队列作业,并使用主管来管理多个工作人员. 我有一个以上的numprocs工作了好几天,然后主管下来,即使主管处于活动状态. 因为在主管中,当supervisord失败超过配置文件中设置的startretries值启动程序/ worker时,程序/ worker转到FATAL
我正在使用Redis进行laravel队列作业,并使用主管来管理多个工作人员.
我有一个以上的numprocs工作了好几天,然后主管下来,即使主管处于活动状态.

因为在主管中,当supervisord失败超过配置文件中设置的startretries值启动程序/ worker时,程序/ worker转到FATAL STATE然后它不会处理任何作业,所以当所有工作人员都处于这种状态时,主管会关闭.
然后我们需要手动重启Supervisor再次开始处理.

但这不是一个适当的解决方案.
我的问题是为什么主管无法启动,解决方案是什么?
参考主管文件:-http://supervisord.org/subprocess.html
我的配置文件是这样的: –

[program:name]
process_name=%(program_name)s_%(process_num)02d
command=php /path/artisan queue:work --queue=queue1,queue2,queue3,queue4,default --tries=1 --daemon
autostart=true
autorestart=true
startretries=15
numprocs=150
user=root
redirect_stderr=true
stdout_logfile=/path/worker.log
stderr_logfile=/path/workerError.log

更新
我的日志文件看起来像这样

我的stdout日志文件看起来像这样


任何帮助将不胜感激.

相关的日志条目是:
exited: laravelw_106 (exit status 0; not expected)
gave up: laravelw_106 entered FATAL state,ntoo many start retries too quickly

laravel队列工作程序在启动后会因某种原因立即停止.
队列工作者应该是长时间运行的.

你需要找出它退出的原因;也许你在工作的某个地方有一个exit()或die()语句.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读