进程管理工具Supervisor 使用介绍

本文介绍了Supervisor的安装、配置和启动步骤,重点讲解了配置文件的设置,包括include指令和进程管理配置。此外,还分享了在使用过程中遇到的错误及解决方案,如配置语法错误和命令行选项问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装

  服务器上带的python是2.7版本的,直接执行安装

pip install supervisor 

配置

        生成配置文件 

 echo_supervisord_conf > /etc/supervisord.conf

 打开配置文件

vim /etc/supervisord.conf

在配置文件底部,配置include

[include]  # 一定要把这一行前面的分号; 去掉 ,否则你下面添加的进程配置不会生效
    files=/etc/supervisor/*.conf #若你本地无/etc/supervisor目录,请自建

 用supervisor管理进程,配置如下: 

cd /etc/supervisor     
vim sms_queue.conf

  加入以下内容(根据自己的需要修改)

[program:sms_queue]
command= php think queue:work --queue smsJobQueue --daemon ;需要执行的命令(分号前面一定要加空格)
directory=/www/web/mobile_meiyuzhixing_com/public_html ; directory to cwd to before exec (def no cwd)
process_name=%(program_name)s 
autostart=true ; start at supervisord start (default: true)
autorestart=true ; whether/when to restart (default: unexpected)
startsecs=3 ; number of secs prog must stay running (def. 1)
redirect_stderr=true ; redirect proc stderr to stdout (default false) 错误输出重定向
stdout_logfile=/tmp/sms_queue.log ; stdout log path, NONE for none; default AUTO, log输出

 启动

 启动supervisor

supervisord -c /etc/supervisord.conf
    查看 supervisord 是否在运行:
    ps aux | grep supervisord


supervisorctl的用法(命令行管理工具,可以用这个查看其管理的进程等)

supervisord : 启动supervisor
    supervisorctl reload :修改完配置文件后重新启动supervisor
    supervisorctl status :查看supervisor监管的进程状态
    supervisorctl start 进程名 :启动XXX进程
    supervisorctl stop 进程名 :停止XXX进程
    supervisorctl stop all:停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
    supervisorctl update:根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启


我在使用过程中遇到的错误

  1.  因为忘记把主配置文件底部下面 [include] 这一行前面的分号去掉,结果自己添加的进程配置一直都不生效
  2. 报 couldn't chdir to /www/web/ 的错误,百度了一下是因为directory=... 这一行分号前面没有加空格,加上之后就没有报错了
  3. 在command列 报 The "--daemon;需要执行的命令" option does not exist. 也是把分号前面加一个空格就解决掉了
  4. 参考了  https://www.jianshu.com/p/3658c963d28b的文章
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值