步骤1:安装Supervisor
yum install -y supervisor
步骤2:查看Supervisor安装位置
# 查看Supervisor安装位置,supervisor安装完成后,会在/usr/bin下生成三个执行程序:supervisortd、supervisorctl、echo_supervisord_conf,分别是supervisor的守护进程服务(用于接收进程管理命令)、客户端(用于和守护进程通信,发送管理进程的指令)、生成初始配置文件程序
whereis supervisord
whereis echo_supervisord_conf
whereis supervisorctl
步骤3:修改配置文件
# 修改配置文件,【vi /etc/supervisord.conf】,修改内容如下, 在文件的最后添加如下的内容:
[include]
files = supervisord.d/*.ini
步骤4:自定义配置文件
# 自定义待守护进程配置文件,在 /etc/supervisord.d 下创建以.ini 后缀的文件,编辑如下配置:
# 配置说明如下:
[program:pdfQueue] ;程序名称,在 supervisorctl 中通过这个值来对程序进行一系列的操作
command=php /www/wwwroot/templet.tik-im.com/think queue:work --daemon --queue pdfQueue
autostart=true ;在 supervisord 启动的时候也自动启动
autorestart=true ; 程序异常退出后自动重启
user=root ;用哪个用户启动
redirect_stderr=true ;把 stderr 重定向到 stdout,默认 false
stdout_logfile_maxbytes=20MB ;stdout 日志文件大小,默认 50MB
stdout_logfile_backups=20 ;stdout 日志文件备份数
stderr_logfile=/www/wwwroot/templet.tik-im.com/worker_err.log ; 错误日志文件
stdout_logfile=/www/wwwroot/templet.tik-im.com/worker.log ;输出日志文件
# 具体配置例子如下,黄色内容可以修改:
[program:pushQueue]
command=php /www/wwwroot/项目名称/think queue:work --daemon --queue pushQueue
autostart=true
autorestart=true
user=root
redirect_stderr=true
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=20
stderr_logfile=/www/wwwroot/项目名称/runtime/worker_err.log
stdout_logfile=/www/wwwroot/项目名称/runtime/worker.log
步骤5:Surpervisor启动
# supervisord二进制启动
supervisord -c /etc/supervisord.conf
# 检查进程
ps aux | grep supervisord
# 更新Supervisor
supervisorctl update
# 关闭Supervisor
supervisorctl shutdown