进程守候神器之supervisord

备注:作为一位后端开发工程师,是否遇到过这样的场景,我们需要一个进程常驻。你的第一个想法是什么?* * * * * crontab ?no,你有更好的选择,毕竟crontab更加适用于定时任务。supervisord可以让你的进程在执行完成或者意外终止时0间隙重新启动。如果你使用过队列,应该懂得生产者和消费者,如何让消费者持续消费且不中断?此时我们只需要将消费命令直接写入到supervisord的配置文件即可。

一、如何安装并启动?

1、如何安装

yum install supervisor

2、如何启动

supervisord -c /etc/supervisord.conf

二、如何修改配置文件、加入新的配置?

cd /etc/supervisord.d   #进入配置目录
vim mq.conf

#写入以下配置
[program:aliyun_mq_worker]    #配置名称
process_name=%(program_name)s_%(process_num)02d
command=php /data/www/greens/artisan mq:receive      #此处为需要守候的命令
autostart=true              #自动启动
autorestart=true            #自动重启
user=root
numprocs=1                  #进程数(队列消费者通常为多个进程一起执行)
redirect_stderr=true
stdout_logfile=/data/www/greens/storage/logs/worker.log   #日志路径

:wq  #保存并退出

3、特别强调

supervisorctl reread  #supervisor 有新配置需要加载时执行
supervisorctl update   #supervisorctl update 配置更新时执行
supervisorctl restart all #执行中的进程代码出现更新时尤其要小心,执行该代码保证代码正常生效

你可能感兴趣的:(进程守候神器之supervisord)