Linux的后臺(tái)進(jìn)程運(yùn)行有好幾種方法,例如nohup,screen等,但是,如果是一個(gè)服務(wù)程序,要可靠地在后臺(tái)運(yùn)行,我們就需要把它做成daemon,最好還能監(jiān)控進(jìn)程狀態(tài),在意外結(jié)束時(shí)能自動(dòng)重啟。
supervisor就是用Python開發(fā)的一套通用的進(jìn)程管理程序,能將一個(gè)普通的命令行進(jìn)程變?yōu)楹笈_(tái)daemon,并監(jiān)控進(jìn)程狀態(tài),異常退出時(shí)能自動(dòng)重啟。
一、安裝配置
1、MAC OS下
#pip install supervisor
2、centos 或 linux 下
#easy_install supervisor
3、源碼安裝
#wget https://pypi.python.org/packages/80/37/964c0d53cbd328796b1aeb7abea4c0f7b0e8c7197ea9b0b9967b7d004def/supervisor-3.3.1.tar.gz
#tar zxf supervisor-3.1.3.tar.gz
#cd supervisor-3.3.1
#python setup.py install
安裝成功后:
#echo_supervisord_conf
能print出一個(gè)樣本的配置文件。
#echo_supervisord_conf > /etc/supervisord.conf
創(chuàng)建一份配置文件到我們想要的目錄。(這里把supervisord.conf放在了etc目錄下)
然后標(biāo)記好我們的配置文件位置。
#supervisord -c /etc/supervisord.conf
到這一步,你已經(jīng)完成了supervisor的基本安裝配置,我們可以根據(jù)我們的需求對(duì)supervisord.conf進(jìn)行修改~
二、現(xiàn)在開始創(chuàng)建個(gè)program吧~
下面監(jiān)控一個(gè)laravel的隊(duì)列服務(wù)
#vim /etc/supervisord.conf
[include]
files = /etc/supervisord.conf.d/*.conf
#cd /etc
#mkdir supervisord.conf.d
然后我們可以在supervisord.conf.d目錄下建立自己想要的.conf文件。并把自己想要監(jiān)控的program在文件里添加。
#supervisorctl update
update一下就好了~