[TOC]
# Supervisord
Supervisord 是用 Python 实现的一款非常实用的进程管理工具,supervisord 还要求管理的程序是非 daemon程序,supervisord 会帮你把它转成 daemon 程序,因此如果用 supervisord 来管理 nginx 的话,必须在nginx 的配置文件里添加一行设置 daemon off 让 nginx 以非 daemon 方式启动。
## supervisord 安装
1. 安装 setuptools
wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg
sh setuptools-0.6c11-py2.7.egg
easy_install supervisor
echo_supervisord_conf >/etc/supervisord.conf
mkdir /etc/supervisord.conf.d
2. 修改配置 `/etc/supervisord.conf`
[include]
files = /etc/supervisord.conf.d/*.conf
3. 新建管理的应用
cd /etc/supervisord.conf.d
vim beepkg.conf
配置文件:
[program:beepkg]
directory = /opt/app/beepkg
command = /opt/app/beepkg/beepkg
autostart = true
startsecs = 5
user = root
redirect_stderr = true
stdout_logfile = /var/log/supervisord/beepkg.log
## supervisord 管理
Supervisord 安装完成后有两个可用的命令行 supervisord 和 supervisorctl,命令使用解释如下:
* supervisord,初始启动Supervisord,启动、管理配置中设置的进程。
* supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:beepkg]里配置的值,这个示例就是beepkg。
* supervisorctl start programxxx,启动某个进程
* supervisorctl restart programxxx,重启某个进程
* supervisorctl stop groupworker: ,重启所有属于名为groupworker这个分组的进程(start,restart同理)
* supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
* supervisorctl reload,载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程。
* supervisorctl update,根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。
>>>注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。
- 写在前面的话
- 第0章 beego 简介
- 0.1 为beego贡献
- 0.2 发布版本
- 0.3 升级指南
- 第1章 安装升级
- 1.1 bee工具的使用
- 第2章 快速入门
- 2.1 新建项目
- 2.2 路由设置
- 2.3 Controller运行机制
- 2.4 Model逻辑
- 2.5 View编写
- 2.6 静态文件处理
- 第3章 beego的MVC架构
- 3.1 Model设计
- 3.1.1 概述
- 3.1.2 ORM使用
- 3.1.3 CRUD操作
- 3.1.4 高级查询
- 3.1.5 原生SQL查询
- 3.1.6 构造查询
- 3.1.7 事物处理
- 3.1.8 模型定义
- 3.1.9 命令模式
- 3.1.10 测试用例
- 3.1.11 自定义字段
- 3.1.12 FAQ
- 3.2 View设计
- 3.2.1 模板语法指南
- 3.2.2 模板处理
- 3.2.3 模板函数
- 3.2.4 静态文件处理
- 3.2.5 模板分页处理
- 3.3 Controller设计
- 3.3.1 参数配置
- 3.3.2 路由设置
- 3.3.3 控制器函数
- 3.3.4 XSRF过滤
- 3.3.5 请求数据处理
- 3.3.6 session 控制
- 3.3.7 过滤器
- 3.3.8 flash 数据
- 3.3.9 URL构建
- 3.3.10 多种格式数据输出
- 3.3.11 表单数据验证
- 3.3.12 错误处理
- 3.3.13 日志处理
- 第4章 beego的模块设计
- 4.1 session 模块
- 4.2 grace 模块
- 4.3 cache 模块
- 4.4 logs 模块
- 4.5 httplib 模块
- 4.6 context 模块
- 4.7 toolbox 模块
- 4.8 config 模块
- 4.9 i18n 模块
- 第5章 beego高级编程
- 5.1 进程内监控
- 5.2 API自动化文档
- 第6章 应用部署
- 6.1 独立部署
- 6.2 Supervisor部署
- 6.3 Nginx 部署
- 6.4 Apache 部署
- 第7章 第三方库
- 第8章 应用例子
- 8.1 在线聊天室
- 8.2 短域名服务
- 8.3 Todo列表
- 第9章 FAQ