【Linux】python进程管理之supervisor安装使用教程

安装supervisor

pip install supervisor

生成配置文件

echo_supervisord_conf > /etc/supervisord.conf

修改配置文件

vim /etc/supervisord.conf
[unix_http_server]
file=/run/supervisor.sock   ; the path to the socket file

[supervisord]
logfile=/var/log/supervisord.log ; main log file; default $CWD/supervisord.log

[supervisorctl]
serverurl=unix:///run/supervisor.sock ; use a unix:// URL  for a unix socket

[include]              # 前面 ; 号一定要去掉
files = /data/services/crawler_scrapy_us/docs/process_server.ini  # 前面 ; 号一定要去掉

进程服务管理文件 process_server.ini

[group:abc]
programs = process1,process2

[program:process1]
directory=/data/service
command=/usr/bin/python process1.py
autostart=true
autorestart=true
stderr_logfile=/var/log/process1_stderr.log
stdout_logfile=/var/log/process1_stdout.log

[program:process2]
directory=/data/service
command=/usr/bin/python process2.py
autostart=false            # 关闭自动开始
autorestart=true
stderr_logfile=/var/log/process2_stderr.log
stdout_logfile=/var/log/process2_stdout.log

启动supervisord

supervisord -c /etc/supervisord.conf

检查supervisord进程情况

ps aux | grep supervisord
# kill 2112   # 若需要关闭,用这命令

supervisorctl命令备忘

# 查看supervisord当前管理的所有进程的状态
supervisorctl status

# 启动进程
supervisorctl start process1  #启动单个进程
supervisorctl start abc:   #启动进程组
supervisorctl start all           #启动所有进程

# 停止进程
supervisorctl stop process1
supervisorctl stop all

# 重启进程
supervisorctl restart process1  #或者使用supervisorctl reload: 重启
supervisorctl restart all

# 读取有更新(增加)的配置文件,不会启动新添加的程序
supervisorctl reread

# 将配置文件里新增的子进程加入进程组,如果设置了autostart=true则会启动新新增的子进程
supervisorctl update
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云霄IT

感谢感谢!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值