什么是supervisor?
supervisor是用python开发的client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。可以很方便的监听、启动、停止、重启一个或者多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。一些粒度更细的定时任务(linux crontab),也可以由supervisor进行管理。
环境要求,python2.7以上
以下分别对mac以及centos环境下使用supervisor
Mac 下使用supervisor
-
环境:Mac 版本10.15.7,直接使用homebrew来安装管理;Python版本 2.7.16
-
安装:
brew install supervisor,版本为4.2.0 -
启动:
brew services start supervisor(已设置为开机自启动) -
查看启动状态:
ps -aux|grep supervisord -
配置文件位置:
/usr/local/etc/supervisord.conf,进入找到最后一个include[include] files=/etc/supervisor.d/*.ini #去掉前面的注释符,可以定义任意位置,进程文件命名后缀为`.ini` -
在上一步的files文件目录位置,编写自己的进程,如
test.ini(也可以通过关键字group来进行分组,一次性启动/停止一组进程)
[program:test]
directory = /directory/to/your/project ; 程序的启动目录
command = your shell cmd ; 启动命令,可以看出与手动在命令行启动的命令是一样的
autostart = true ; 在 supervisord 启动的时候也自动启动
startsecs = 5 ; 启动 5 秒后没有异常退出,就当作已经正常启动了
autorestart = true

本文介绍了Supervisor——一个基于Python的进程管理工具,详细讲解了在Mac和CentOS环境下如何安装、配置及使用Supervisor,包括进程的自动重启和管理。在Mac上使用Homebrew安装,CentOS则通过yum安装,并提供了配置文件位置、启动脚本创建等关键步骤。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



