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

yipeiwu_com6年前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去掉空白行的多种实现代码

python去掉空白行的多种实现代码

测试代码 jb51.txt 1:www.jb51.net 2:www.jb51.net 3:www.jb51.net 4:www.jb51.net 5:www.jb51.net 6...

Numpy之random函数使用学习

random模块用于生成随机数,下面看看模块中一些常用函数的用法: numpy.random.rand(d0, d1, ..., dn):生成一个[0,1)之间的随机浮点数或N维浮点...

python开发之thread实现布朗运动的方法

python开发之thread实现布朗运动的方法

本文实例讲述了python开发之thread实现布朗运动的方法。分享给大家供大家参考,具体如下: 这里我将给大家介绍有关python中thread来实现布朗运动的一个例子 下面是运行效果...

python实现在字符串中查找子字符串的方法

本文实例讲述了python实现在字符串中查找子字符串的方法。分享给大家供大家参考。具体如下: 这里实现python在字符串中查找子字符串,如果找到则返回子字符串的位置,如果没有找到则返回...

pytorch构建网络模型的4种方法

pytorch构建网络模型的4种方法

利用pytorch来构建网络模型有很多种方法,以下简单列出其中的四种。 假设构建一个网络模型如下: 卷积层--》Relu层--》池化层--》全连接层--》Relu层--》全连接层...