使用 Supervisor 监控 Python3 进程方式

yipeiwu_com5年前Python基础

首先说明,Supervisor 只能安装在 Python 2.x 环境中!

但是基本上所有的 Linux 都同时预装了 Python 2.x 和 Python 3.x 版本,并且调用 python 命令时默认运行的 Python 2,运行 Python 3 只需要 调用 python3 即可。

博主的 CentOS 上预装了 Python 2.7 和 Python 3.5(后升级到了 3.7),并且将 Python 命令默认链接到 Python 3.7。

因此博主的环境是

python : python 3.7 版本

python2 : python 2.7 版本

pip : pip for 3.7

pip2 : pip for 2.7

安装

pip2 install supervisor

此时 [python2]/bin 中多了一些命令

如 supervisor、supervisorctl、echo_supervidord_conf

可以直接全局运行

配置

输出配置文件内容并重定向到 /etc/supervisord.conf 中

echo_supervisord_conf > /etc/supervisord.conf

打开该文件,配置方式的每一步在注释都写得很清楚了,或者网上找中文说明也可

建议 mkdir /etc/supervisor.d 然后把单独的进程配置独立为一个 xxx.ini,然后在 supervisord.conf 最后 include supervisor.d/*.ini,把所有独立的进程配置文件导入进来,现在的软件配置基本上都是采用这种分模块的方式,这里给出一个我的进程配置以供参考:

关键的一步,在配置 command 时若要使用 Python 3 或是 使用特定 venv 的 Python 执行命令,只需要将命令的完整路径补充完整即可,如我这里使用的就是为 flask 配置的 独立 Python 虚拟环境,配置完成后保存

运行 supervisord 会默认以 /etc/supervisord.conf 作为配置文件后台运行 supervisor 进程管理,也可以 运行 supervisord -c [配置文件路径] 来指定

以上这篇使用 Supervisor 监控 Python3 进程方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈Python中函数的参数传递

1.普通的参数传递 >>> def add(a,b): return a+b >>> print add(1,2) 3 >&g...

python测试驱动开发实例

本文实例讲述了python测试驱动开发的方法,分享给大家供大家参考。具体方法如下: import unittest from main import Sample class S...

Python标准库os.path包、glob包使用实例

os.path包 os.path包主要用于处理字符串路径,比如'/home/zikong/doc/file.doc',提取出有用的信息。 复制代码 代码如下: import os.pat...

python 自定义对象的打印方法

在python中,如果不重写自定义对象的__str__方法,打印出来的对象是一串类似于<__main__.Bean object at 0x1007da470>的字符串。这当...

Python多进程写入同一文件的方法

Python多进程写入同一文件的方法

最近用python的正则表达式处理了一些文本数据,需要把结果写到文件里面,但是由于文件比较大,所以运行起来花费的时间很长。但是打开任务管理器发现CPU只占用了25%,上网找了一下原因发现...