supervisord 是进程管理的服务端,常驻进程辅助干活; supervisorctl 是客户端,用来执行查看、加载等命令。php
pip install supervisor
复制代码
或者是ubuntu
yum install supervisor # centos
sudo apt-get install supervisor # ubuntu
复制代码
mkdir -p /etc/supervisor/
mkdir -p /etc/supervisor/supervisord.d/
复制代码
echo_supervisord_conf > /etc/supervisor/supervisord.conf
复制代码
vim /etc/supervisor/supervisord.conf
复制代码
配置文件中配置除了最后两行,使用默认的就行。vim中使用G把光标跳到文件末尾,将最后一行修改成以下。vim
[include]
files = /etc/supervisor/supervisord.d/*.conf
复制代码
vim /etc/supervisor/supervisord.d/shopApi.conf
复制代码
[program:xmshop-api]
process_name=%(program_name)s_%(process_num)02d
command=php /mnt/www/xmshopApi/artisan queue:work --tries 3 --sleep 3
autostart=true
autorestart=true
user=root
numprocs=1
redirect_stderr=true
stdout_logfile=/mnt/www/shopApi/storage/logs/supervisor.log
复制代码
#启动supervisord服务
supervisord -c /etc/supervisor/supervisord.conf
supervisorctl reload # 重启 supervisord
supervisorctl reread # 从新读取配置文件 supervisord
supervisorctl start lumen_worker:* # 启动lumen_worker服务
supervisorctl restart lumen_worker:* # 重启lumen_worker服务
复制代码
启动后查看一下运行状态centos
supervisorctl status
复制代码
修改了文件以后必定要重启才有用,reread没有用 api