Supervisor介绍

Supervisor 允许其用户在UNIX类操作系统上控制多个进程。 块如下:

方便

需要为每个进程实例编写rc.d脚本通常是不方便的。 rc.d脚本是进程初始化/自动启动/管理的常用形式,但写入和维护可能会很痛苦。此外,rc.d脚本不能自动重新启动崩溃的进程,并且许多程序在崩溃时不会正常重新启动。Supervisord启动进程作为其子进程,并可以配置为在崩溃时自动重新启动它们。它也可以自动配置为在其自身的调用中启动进程。

准确性

在UNIX上的进程通常很难获得准确的上/下状态。Pidfiles经常说谎。Supervisord启动进程作为子进程,所以它总是知道它的子进程的真正的上/下状态,可以方便地查询这些数据。

进程组

进程通常需要以组为单位启动和停止,有时甚至在“优先级顺序”中。人们常常难以解释这一点。Supervisor 允许您为进程分配优先级,并允许用户通过supervisorctl客户端发出命令,如“全部启动”和“重新启动所有”,以预分配的优先级顺序启动它们。此外,进程可以分组为“进程组”,一组逻辑关联进程可以作为一个单元停止并启动。

特征

简单

Supervisor通过简单的INI风格的配置文件进行配置,易于学习。它提供了许多每个进程选项,使您的生活更容易,如重新启动失败的进程和自动日志轮换。

集中

进程可以单独或分组控制。您可以配置Supervisor以提供本地或远程命令行和Web界面。

高效

Supervisor通过fork / exec启动其子进程,子进程不进行后台进程。

扩展性强

Supervisor有一个简单的事件通知协议,用任何语言编写的程序都可以用来管理它,还有一个用于控制的XML-RPC接口。它还使用可以由Python开发人员利用的扩展点构建。

兼容

supervisor除Windows之外。它在Linux,Mac OS X,Solaris和FreeBSD上进行了测试和支持。它完全用Python编写,因此安装不需要C编译器。

稳定性

Supervisor已经存在多年,并已在许多服务器上使用。



Supervisor 组件

supervisord

supervisord服务端程序。它负责在自己的调用中启动子程序,响应客户端的命令,重新启动崩溃或退出的子进程,记录其子进程stdoutstderr 输出,以及生成和处理对应于子进程生命周期中的“事件”。

配置文件。这通常位于/etc/supervisord.conf中。此配置文件是“Windows-INI”样式的配置文件。适当的文件系统权限来保护此文件非常重要,因为它可能包含未加密的用户名和密码。

supervisorctl

supervisor的命令行客户端名为 supervisorctl。它为supervisor提供的功能提供了一个类似shell的界面。从supervisorctl,用户可以连接到不同的 supervisord,停止和启动的子进程,并获得运行的进程的列表supervisord。

命令行客户端通过UNIX域套接字或Internet(TCP)套接字与服务器通信。服务器可以断言客户端的用户在允许他执行命令之前应该出现认证凭证。客户端进程通常使用与服务器相同的配置文件,但其中具有[supervisorctl]部分的任何配置文件都可以正常工作。

Web Server

Web Server 可以通过浏览器访问查看和控制进程状态,在置文件的[inet_http_server]块里配置,访问服务器URL(例如http:// localhost:9001 /)以通过Web界面查看和控制进程状态。

XML-RPC接口

服务于Web UI的相同的HTTP服务器提供了一个XML-RPC接口,可用于询问和控制supervisor及其运行的程序。请参阅XML-RPC API文档


安装使用方法 点击这里 wuguiyunwei.com

supervisor 安装配置的更多相关文章

  1. .Net Core Linux部署之进程守护 Supervisor 安装配置

    1.Supervisor 安装 //安装easy_install yum install python-setuptools //安装Supervisor easy_install superviso ...

  2. supervisor安装配置与使用

    supervisor:C/S架构的进程控制系统,可使用户在类UNIX系统中监控.管理进程.常用于管理与某个用户或项目相关的进程. 组成部分supervisord:服务守护进程supervisorctl ...

  3. supervisor 安装 配置 及 使用

    supervisor是微软官方推荐的一个工具,传送门, 所以我们也使用这个工具来管理我们的asp.net core应用进程   服务器环境:ubuntu14.04 x64   安装  apt-get ...

  4. supervisor安装配置

    1.安装 下载:https://codeload.github.com/Supervisor/supervisor/zip/3.1.3 2.安装 .zip cd supervisor- python ...

  5. supervisor 安装配置详解

    一.安装 源码安装 先下载最新的supervisor安装包:https://pypi.python.org/pypi/supervisor , 如: (python3命令为 pip install g ...

  6. CentOS7下Supervisor安装与配置

    Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统 ...

  7. supervisor安装和配置

    直接命令 easy_install supervisor 如果报错先安装 yum install python-setuptools,再上面一条命令: 安装成功后显示finished,我们再次进行py ...

  8. mac下supervisor安装及简单配置

    supervisor是一个用 Python 写的进程管理工具,可以很方便的用来启动.重启.关闭进程(守护进程).可以用他来管理自己的“服务程序”. 安装 首先安装Python,Mac系统好像自带. 执 ...

  9. Supervisor安装与配置(Linux/Unix进程管理工具)

    原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...

随机推荐

  1. hive集成sentry

    1.安装配置sentry 详细步骤见上一篇安装配置sentry 2.配置hive 2.1 Hive-server2集成Sentry 在 /etc/hive/conf/hive-site.xml中添加: ...

  2. OC中常见的结构体,以及NSNumber、NSValue、NSDate的使用

    常见的结构体 NSPoint和CGPoint NSSize和CGSize NSRect 和 CGRect NSPoint和CGPoint的使用 NSPoint和CGPoint是同义的 typedef ...

  3. ListView控件详解

    ListView是个较为复杂的控件   1.定义 把它拽进来,系统会自动在Designer.cs里添加一个  this.listView1 = new System.Windows.Forms.Lis ...

  4. c# 操作monogodb的一些简单封装

    public interface IDataBaseCore { } public class BasicData : IDataBaseCore { } public class Filter    ...

  5. 学习笔记:javascript body常用事件

    Window 事件属性 针对 window 对象触发的事件(应用到 <body> 标签): 属性 值 描述 onafterprint script 文档打印之后运行的脚本. onbefor ...

  6. XSHELL工具上传文件到Linux以及下载文件到本地(Windows)

    Xshell很好用,然后有时候想在windows和linux上传或下载某个文件,其实有个很简单的方法就是rz,sz.首先你的Linux上需要安装安装lrzsz工具包,(如果没有安装请执行以下命令,安装 ...

  7. Java学习笔记——I/O流

    朝辞白帝彩云间,千里江陵一日还.两岸猿声啼不尽,轻舟已过万重山. --早发白帝城 我们老师写代码有个特点,就是简洁.每一句的意图都十分明确.所以他讲课的速度也比较快. 跑题了,说说I/O流: 1.字节 ...

  8. 一次基于Vue.Js用户体验的优化

    .mytitle { background: #2B6695; color: white; font-family: "微软雅黑", "宋体", "黑 ...

  9. 白话讲session

    什么是session Session一般译作会话,牛津词典对其的解释是进行某活动连续的一段时间.从不同的层面看待session,它有着类似但不全然相同的含义.比如,在web应用的用户看来,他打开浏览器 ...

  10. ArrayList源码解析(四)

    这篇文章主要看ArrayList的Iterator和ListIterator的实现. 1.Iterator和类Itr 当我们调用iterator方法时返回一个Iterator. /** * Retur ...