如何确保进程意外退出,自动重启 确保服务可用性 说到底就是守护进程
安装 supervisor
yum install supervisor
修改 /etc/supervisord.conf 文件后缀名可以随意气 如 .ini等
[include]
files = supervisord.d/*.conf
在 /etc/supervisord.d 目录下 新进一个需要守护的进程 nginx.conf
进程名 程序名字 命令 等这些非常容易理解
[program:nginx]
command=/usr/local/nginx/sbin/nginx -t reload
directory=/usr/local/nginx/sbin
stdout_logfile=/tmp/nginx.log
autostart=true
autorestart=true
redirect_stderr=true
user=root
startsecs=3
启动守护进程
python3 /usr/bin/supervisord -c /etc/supervisord.conf
查看守护进程的一些常用命令
supervisorctl reload :修改完配置文件后重新启动supervisor
supervisorctl status :查看supervisor监管的进程状态
supervisorctl start 进程名 :启动XXX进程
supervisorctl stop 进程名 :停止XXX进程
supervisorctl stop all:停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
supervisorctl update:根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启