python进程管理工具supervisor使用实例

yipeiwu_com7年前Python基础

平时我们写个脚本,要放到后台执行去,我们怎么做呢?

复制代码 代码如下:

nohup python example.py 2>&1 /dev/null &

用tumx或者screen? 但是用着可能都不爽,今天就看看python里面的一个进程管理工具supervisor:

官方说:Supervisor: A Process Control System

说白了他就是一个demon程序,他来帮助我们完成对我们想要托管的脚本也好程序也好,好好的照料;

1、安装

python的东西就是好安装,如果是centos系列,可以使用:

复制代码 代码如下:

yum install supervisor

如果是debin系列的:
复制代码 代码如下:

apt-get install supervisor

或者干脆点:

复制代码 代码如下:

easy_install supervisor
pip install supervisor

2、创建配置文件

你可以使用自带的一个工具:echo_supervisord_conf
默认是在/etc下 创建,但需要你有root权限:

复制代码 代码如下:

echo_supervisord_conf > /etc/supervisord.conf

当然也可以是其它目录,但需要在启动的时候指定(-c)

3、启动Supervisor

接下来我们来看看怎么启动supervisord 和 supervisorctl

首先找一个要托管的程序,比如/bin/date

复制代码 代码如下:

vim /etc/supervisord.conf

[program:test]
command=python /root/test_supervisor.py
process_name=%(program_name)s
stdout_logfile=/root/test.log
stderr_logfile=/root/test.log


保存,启动:
复制代码 代码如下:

/usr/bin/supervisord -c /etc/supervisord.conf

发送信号:

肿么样,很爽吧,接下来,就可以自由发挥了。。。
http://supervisord.org/ 这是官网。
最后的最后,他还可以界面管理哦,这也为我们在界面进行进程管理提供了一种方法哦!

相关文章

用Python调用win命令行提高工作效率的实例

用Python调用win命令行提高工作效率的实例

作为程序猿,每天一上班打开电脑要做的时候就是打开各种工作所需的工具,如QQ,SQL Server,浏览器,编辑器等,每天都要一个个点,重复性的工作做多了也觉得烦(关键是影响了我上班倒水的...

详解django的serializer序列化model几种方法

序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据 方法一:通过继承View类,重写get方法,获...

Python编程生成随机用户名及密码的方法示例

本文实例讲述了Python编程生成随机用户名及密码的方法。分享给大家供大家参考,具体如下: 方案一: import random global userName,userPasswo...

使用Python的PIL模块来进行图片对比

在使用google或者baidu搜图的时候会发现有一个图片颜色选项,感觉非常有意思,有人可能会想这肯定是人为的去划分的,呵呵,有这种可能,但是估计人会累死, 开个玩笑,当然是通过机器识别...

在Mac上删除自己安装的Python方法

推荐使用 Homebrew 来安装第三方工具。自己安装的python散落在电脑各处,删除起来比较麻烦。今天在此记录一下删除的过程(本人以Python3.6为例)。 删除Python 3....