【Python】使用Supervisor来管理Python的进程

 1.问题描述

    需要一个python的服务程序在后台一直运行,不能让该进程被杀死,即使被杀死也要能及时自动重启。如:有一个python的程序:test.py ,通过命令:python test.py来运行程序,但是它会受命令行的中断而中断。所以我们需要一个方法来保证该程序一直在后台运行。


2.解决方法

以前经常用命令:nohup python test.py & 来保证其在后台运行不中断,但是这也不能保证一直运行。

下面介绍用supervisor来管理python的进程,保证其在后台一直运行不中断。


(1)安装supervisor

在命令行输入:sudo apt-get install supervisor  来安装supervisor

测试安装是否成功,在命令行输入:supervis 再按tab键,看其是否能补全命令:supervisor,如果能则表示安装成功


(2)配置supervisord.conf文件

找到supervisord.conf配置文件,一般在/etc/ 目录下,或者在/etc/supervisor/ 目录下,用root权限打开该文件:sudo vim supervisord.conf,否则不能进行修改。

在文件末尾添加如下几行:

[program:myProgram]

command=python /home/myname/test.py

autostart=true

autorestart=ture

stdout_logfile=/home/myname/test.log


注释:第一行的myProgram自己取个名字,表示你的项目就行

第二行的python /home/myname/test.py表示你运行程序的命令

第三行表示自动启动,如果值为false则表示不自动启动

第四行表示自动重启,如果值为false则表示不自动重启

最后一样表示程序打印出的信息都记录在该test.log文件内,是log文件


(3)使用supervisor

配置完之后,命令行输入:sudo supervisord  就可以了。

你可以kill掉你程序的进程,然后再看,发现它自动重启了,不用担心会被kill掉。


好了,希望对大家有帮助。

-----------------------------------------------------------------------------------------------------------------------------------------



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值