Skip to main content

Supervisor进程管理

简介

Supervisor (http://supervisord.org) 是一个用 Python 写的进程管理工具,可以很方便的用来启动、重启、关闭进程(不仅仅是 Python 进程)。除了对单个进程的控制,还可以同时启动、关闭多个进程,比如很不幸的服务器出问题导致所有应用程序都被杀死,此时可以用 supervisor 同时启动所有应用程序而不是一个一个地敲命令启动。

安装步骤

# 安装命令
yum -y install supervisor

# 服务端信息
whereis supervisord
# supervisord: /usr/bin/supervisord /etc/supervisord.conf /etc/supervisord.d

# 控制端信息
whereis supervisorctl
# supervisorctl: /usr/bin/supervisorctl

# 启动服务
systemctl start supervisord

# 查看进程
ps -ef| grep supervisord

# 设为开机自启动
systemctl enable supervisord

进程配置文件

[program:sv001]
; 通过 supervisor 维护,think-queue 的监听程序进程
directory=/www/wwwroot/www2.website.com
command=/www/server/php/72/bin/php think queue:listen --queue shopro
autostart=true
startsecs=5
autorestart=true
startretries=3
user=www
redirect_stderr=true
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=20
; 日志路径不存在需要手动创建
stdout_logfile=/var/log/sv001_stdout.log

控制进程状态

# 启动进程
supervisorctl start lmkweixin

# 停止进程
supervisorctl stop lmkweixin

# 查看进程状态
supervisorctl status

# 重启进程
supervisorctl restart lmkweixin