这里介绍laravel 配合Supervisor做队列监控
1 安装Supervisor
yum -y install supervisor
2 生产配置文件
echo_supervisord_conf > /etc/supervisord.conf
3 代开配置文件
vim /etc/supervisord.conf
4 修改配置文件,指定各文件地址,包括配置文件,日志文件地址等
[unix_http_server]
file=/var/run/supervisor.sock
[supervisord]
logfile=/var/log/supervisord.log
pidfile=/var/run/supervisord.pid
[supervisorctl]
serverurl=unix:///var/run/supervisor.sock
[include]
files = supervisor/conf.d/*.conf
*注 以上配置注意删除注释符 ':'
5 创建配置文件夹并进入文件夹
mkdir -p /etc/supervisor/conf.d
cd /etc/supervisor/conf.d
6 新建配置文件
vim filename.conf //filename 为配置文件名 根据实际业务命名
[program:queue]
process_name=%(program_name)s_%(process_num)02d
command=php {{path}}/artisan queue:work --queue=auto_df,default,commission --timeout=300 --sleep=1 --daemon //这里已laravel 为例 执行队列监听命令
autostart=true
autorestart=true
numprocs=12 //进程数量
stdout_logfile={{path}}/queue.log //日志文件路径
stderr_logfile= {{path}}/queue_error.log
user=www //执行用户
:wq
7 守护进程命令
supervisord 启动
supervisorctl update 重新读取配置
supervisorctl status 守护状态
supervisorctl start all 开启所有
supervisorctl stop all 停止所有
supervisorctl restart all 重启所有