python使用supervisor进行进程管理

        Supervisor 是一个用python实现的进程管理工具,可以很方便地启动、重启、关闭、查看进程(不仅仅是python进程)。除却对单个进程的控制,它还能监控进程:当进程由于某些原因被误kill掉了之后,自动重启并发送时间通知。

一、安装

pip install supervisor

二、Supervisor组件

supervisor有以下四种组件:

1、Supervisord:服务端程序,主要功能为启动服务及其管理子进程,记录日志,重启崩溃的进程。

2、Supervisorctl:命令行客户端程序,它提供一个类似shell的借口,通过UNIX与套接字或者TCP/IP套接字使用XML_RPC与Supervisor的进程进行数据通信,它的功能为管理子进程。

3、Web Server:实现了在界面上管理进程。

4、XML_RPC接口:通过该协议对Web Server 进行远程调用。


三、配置

将配置文件放在以下路径:echo_supervisord_conf > /etc/supervisord.conf

接着,开始配置文件:

vim/etc/supervisord.conf

需要注意的是Supervisor的注释需要使用分号,这里以运行一个py文件为例,需要在conf文件最下方修改并添加

其中,[program:myprogram]表示一个叫做myprogram的进程,也就是说,每个program就是一个或者说一组进程。program块会指定要管理的进程,但是需要注意的是被管理的进程不能使用daemon模式,必须在前台运行。

最后,我们可以在super_test.log中查看输出的日志。

四、启动

启动进程:Supervisord -c /etc/supervisord.conf(这个路径就是之前echo的那个路径,即配置文件路径)

接着,进程会以daemon的方式后台运行。我们可以使用supervisorctl连接它:

>supervisorctl -c /etc/supervisord.conf

此时,我们会看到目前启动进程的一些情况


同时,可以通过反馈的结果来组织内容发送邮件。因为在conf配置文件里面有一个[inet_http_server]模块中配置了用户和密码,可以通过访问http://localhost:5000 来的看到HTTP管理页面(需要用户访问验证)。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值