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