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


Posted in Python onSeptember 17, 2014

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

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

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

发送信号:

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

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

Python 相关文章推荐
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 Python
python简单实现旋转图片的方法
May 30 Python
Python的time模块中的常用方法整理
Jun 18 Python
在Django的URLconf中使用命名组的方法
Jul 18 Python
python程序封装为win32服务的方法
Mar 07 Python
django 外键model的互相读取方法
Dec 15 Python
python字符串替换第一个字符串的方法
Jun 26 Python
python 表格打印代码实例解析
Oct 12 Python
python退出循环的方法
Jun 18 Python
Python os库常用操作代码汇总
Nov 03 Python
Python使用pyenv实现多环境管理
Feb 05 Python
Python中OpenCV实现简单车牌字符切割
Jun 11 Python
Python实现备份文件实例
Sep 16 #Python
Python多进程编程技术实例分析
Sep 16 #Python
Python专用方法与迭代机制实例分析
Sep 15 #Python
跟老齐学Python之有容乃大的list(3)
Sep 15 #Python
跟老齐学Python之有容乃大的list(2)
Sep 15 #Python
跟老齐学Python之有容乃大的list(1)
Sep 14 #Python
跟老齐学Python之一个免费的实验室
Sep 14 #Python
You might like
php读取文件内容至字符串中,同时去除换行、空行、行首行尾空格(Zjmainstay原创)
2012/07/31 PHP
PHP中使用file_get_contents post数据代码例子
2015/02/13 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
firefo xml 读写实现js代码
2009/06/11 Javascript
理解Javascript_06_理解对象的创建过程
2010/10/15 Javascript
javascript 密码框防止用户粘贴和复制的实现代码
2014/02/17 Javascript
纯JS实现根据CSS的class选择DOM
2014/03/22 Javascript
JavaScript数据类型学习笔记分享
2016/09/01 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
easyUI下拉列表点击事件使用方法
2017/05/18 Javascript
jQuery.Ajax()的data参数类型详解
2017/07/23 jQuery
Node.js 基础教程之全局对象
2017/08/06 Javascript
浅谈Vue响应式(数组变异方法)
2018/05/07 Javascript
JS中appendChild追加子节点无效的解决方法
2018/10/14 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
详解微信小程序-扫一扫 wx.scanCode() 扫码大变身
2019/04/30 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
vue element upload组件 file-list的动态绑定实现
2019/10/11 Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
2020/09/04 Javascript
vue 函数调用加括号与不加括号的区别
2020/10/29 Javascript
[05:23]DOTA2-DPC中国联赛2月1日Recap集锦
2021/03/11 DOTA
Django框架中数据的连锁查询和限制返回数据的方法
2015/07/17 Python
python黑魔法之编码转换
2016/01/25 Python
Django之模板层的实现代码
2019/09/09 Python
python 队列基本定义与使用方法【初始化、赋值、判断等】
2019/10/24 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
波兰珠宝品牌:YES
2019/08/09 全球购物
职工运动会邀请函
2014/01/19 职场文书
中学生爱国演讲稿
2014/09/05 职场文书
个人政风行风自查自纠报告
2014/10/21 职场文书
2014教师年度思想工作总结
2014/11/10 职场文书
长城英文导游词
2015/01/30 职场文书
停电调休通知
2015/04/16 职场文书
小学中队活动总结
2015/05/11 职场文书
基于Python编写一个监控CPU的应用系统
2022/06/25 Python
教你nginx跳转配置的四种方式
2022/07/07 Servers