标签:
阔爱的天使写了一篇先贴在前面。
https://segmentfault.com/n/1330000004918556
然后我贴上自己的一些总结和使用配置记录。
因为今天被小天使同学教唆使用,一直也没有用过就想使用一下顺便总结一下变成自己的东西。
首先我个人认为,用python实现的supervisor使用了守护进程这个概念去实现一个包裹进程的概念。
他可以帮助你的进程完成失效重启,日志记录,确保在线,关机自启动等一系列的功能。
当使用supervisor的进程死掉的时候,启动他的守护进程可以帮助你重新完成启动该进程的工作,不必再重复的手动去启这个进程,大大的提升了稳定性。
所以可以这样理解,supervisor进程本身是作为被他启动进程的守护进程存在的,只要他不死,他就能提升进程的稳定性。
说了这么多让我大概谈一下如何使用和如何配置。
首先我是使用的pip 安装的。另外顶部那篇文章是使用的apt-get直接安装的 所以两种方法都可以看到了。我这里只介绍使用pip 安装的流程和使用的方法。
这里其实也和官方文档的快速教程差不多进入正题。
使用pip install supervisor安装supervisor
然后supervisor会自动被加到etc/local/bin里 然后可以使用两个命令
1. supervisord
2. supervisorctl
我暂时不谈这两个命令的用途继续向前。
我用电脑切换到root权限,像文档里面说的那样使用命令
echo_supervisord_conf > /etc/supervisord.conf
在etc目录下面生成一个supervisord的配置文件,这个配置文件将被上面我提到的命令1在默认轮径里面寻找到并使用该配置文件启动supervisor进程。
那。。道理我都懂,为什么还看到过一些自己写的配置文件呢like this。。
[program:fswatch-xcf] command=fswatch-xiachufang.sh directory=/Users/piperck/Desktop/tools/sa
这里写了一个app 注意,[program:project-name]
这个是固定名字。下面都是一些参数什么的具体有什么参数可以选择可以参考文档。
那么又如何启动这个conf文件呢?
其实很简单,只需要编辑一下我们放在/etc下的supervisord.conf配置文件就行了。
仔细察看配置文件内容不难发现,在最后有一个[include]模块,
在下面依照这种格式,就可以让启动该配置文件的事以后搜索这个路径下面的app一并启动
[include] files = /Users/piperck/Desktop/tools/sa/*.conf
配置好了之后,让我们来启动他,直接使用命令
supervisord 就可以启动啦!
那启动了之后。。什么都没发生什么情况。。不要方,这个时候使用top 或者 htop 看看进程是不是已经启起来了。
记得分别查看supervisor进程和你自己用命令启动的进程,会发现他们都已经存活了!并且被启动起来了,当你关闭被supervisor启动的进程他也会默认帮你自动重启。
记得还有一个命令没有介绍到,那就是supervisorctl
顾名思义。就是supervisor的控制台
输入之后进入控制题啊,然后使用help命令可以轻松看到有哪些命令可以使用。
这里输入status可以查看被supervisor启动起来的app是哪些app,也就是哪些进程被启动起来了。
reload可以重新加载被修改过的配置文件。
就这样supervisor就被启动起来了,效果也很明显,用来做什么也很明显,更多参数和高级用法,还是在实践中查询文档实现吧!
标签:
原文地址:http://www.cnblogs.com/piperck/p/5380938.html