zoukankan      html  css  js  c++  java
  • Supervisor:基础

    Supervisor is a client/server system that allows its users to control a number of processes on UNIX-like operating systems. 

    组成

    supervisord:

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

    服务端使用配置文件。这通常位于/etc/supervisord.conf中。此配置文件是“Windows-INI”样式配置文件。

    supervisorctl:

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

    命令行客户端通过UNIX域套接字或Internet(TCP)套接字与服务器通信。客户端进程通常使用与服务器相同的配置文件,但其中包含[supervisorctl]部分的任何配置文件都可以使用。

    也可以同web页面来查看和管理进程,需要激活配置文件中的[inet_http_server]部分,然后访问 http:localhost:9001 即可。

    安装

    可以在Linux Mac OS X Solaris FreeBSD UNIX等大部分平台运行,不能在windows平台运行,对python版本的要求,pyhton2需要在2.7以上,python3需要在3.4以上。

    通过pip在线安装:

    pip install supervisor

    离线安装可以查看官网

    启动supervisor之前需要添加配置文件,一般在 /etc/supervisord.conf 位置处。

    启动

    要启动 supervisord,只需要执行 supervisord 。可以添加其他的命令行选项(例如想读取配置文件启动 supervisord -c /etc/supervisord.conf )。如果要重启supervisord ,执行 kill -HUP pid,要强制关闭进程kill -9 pid

    要启动 supervisorctl,只需要执行 supervisorctl 。就进入了supervisorctl的命令行交互页面,常见的命令:

    status
      Get all process status info
    pid
      Get the PID of supervisord.
    pid <name>
      Get the PID of a single child process by name.
    pid all
      Get the PID of every child process, one per line.
    reload
      Restarts the remote supervisord
    reread
      Reload the daemon’s configuration files, without add/remove (no restarts)
    stop <name>
      Stop a process
    stop <gname>:*
      Stop all processes in a group
    stop <name> <name>
      Stop multiple processes or groups
    stop all
      Stop all processes
    start <name>
      Start a process
    start <gname>:*
      Start all processes in a group
    start <name> <name>
      Start multiple processes or groups
    start all
      Start all processes
    restart <name>
      Restart a process
    restart <gname>:*
      Restart all processes in a group
    restart <name> <name>
      Restart multiple processes or groups
    restart all
      Restart all processes

    Note: restart does not reread config files. For that, see reread and update.

    更多命令可以参考 http://supervisord.org/running.html

    配置文件 

    Supervisor配置文件通常名为supervisord.conf。且 supervisord 和 supervisorctl 都会使用这个文件。

    参考文档:

    http://supervisord.org/introduction.html

  • 相关阅读:
    MySQL存储过程中的3种循环【转载】
    单元样选择按钮
    JavaScript(jQuery)实现打印英文格式日期
    哈希算法
    Hello,Expression Blend 4 (含Demo教程和源码)
    Cocos2Dx for XNA类解析(2): CCDirector(上)
    github for Windows使用介绍
    Hello,Behavior
    Vue component+vuedraggable拖拽动态表单
    Vue Component
  • 原文地址:https://www.cnblogs.com/colin220/p/10831057.html
Copyright © 2011-2022 走看看