python进程管理工具supervisor使用实例
平时我们写个脚本,要放到后台执行去,我们怎么做呢?
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爬虫用request库处理cookie的实例讲解
在本篇内容里小编给大家整理的是一篇关于python爬虫用request库处理cookie的实例讲解内容,有需要的朋友们可以学习参考下。2021-02-02
pytorch中model.train()和model.eval()用法及说明
在PyTorch中,model.train()用于启用BatchNormalization和Dropout,保证模型在训练阶段能够有效地利用这些层的特性,而model.eval()则是用于测试阶段,确保BatchNormalization和Dropout不会影响测试结果,保持模型的稳定性2024-09-09
python3中_from...import...与import ...之间的区别详解(包/模块)
Python编码第一步是导入模块,有时候用import ***有时候用from...import,下面这篇文章主要给大家介绍了关于python3中_from...import...与import ...之间区别的相关资料,需要的朋友可以参考下2022-08-08
Python通过TensorFLow进行线性模型训练原理与实现方法详解
这篇文章主要介绍了Python通过TensorFLow进行线性模型训练原理与实现方法,结合实例形式详细分析了Python通过TensorFLow进行线性模型训练相关概念、算法设计与训练操作技巧,需要的朋友可以参考下2020-01-01


最新评论