我正在使用Redis进行laravel队列作业,并使用主管来管理多个工作人员.
我有一个以上的numprocs工作了好几天,然后主管下来,即使主管处于活动状态.
我有一个以上的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()语句.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。