zoukankan      html  css  js  c++  java
  • supervisor进程管理工具

    supervisor 是基于 python 的任务管理工具,用来自动运行各种后台任务.而且简单易用。

    安装supervisor :

      pip install supervisor 

    生成配置文件:

      echo_supervisord_conf > /etc/supervisord.conf

    编辑配置文件:

      vim  /etc/supervisord.conf

    在末尾追加一个任务,参数解释:

     1 # supervisord.conf配置文件参数解释,,分号表示注释
     2 
     3 [program:xx]            ;是被管理的进程配置参数,xx是进程的名称
     4 
     5 command=/opt/redis/src/redis-server /opt/redis/redis.conf  ; 想要启动的程序命令,(可直接指定配置文件启动)命令和配置文件都是绝对路径
     6 autostart=true       ; 在supervisord启动的时候也自动启动
     7 startsecs=10         ; 启动10秒后没有异常退出,就表示进程正常启动了,默认为1秒
     8 autorestart=true     ; 程序退出后自动重启,可选值:[unexpected,true,false],默认为unexpected,表示进程意外杀死后才重启
     9 startretries=3       ; 启动失败自动重试次数,默认是3
    10 user=tomcat          ; 用哪个用户启动进程,默认是root
    11 priority=999         ; 进程启动优先级,默认999,值小的优先启动
    12 redirect_stderr=true ; 把stderr重定向到stdout,默认false
    13 stdout_logfile_maxbytes=20MB  ; stdout 日志文件大小,默认50MB
    14 stdout_logfile_backups = 20   ; stdout 日志文件备份数,默认是10
    15 ; stdout 日志文件,需要注意当指定目录不存在时无法正常启动,所以需要手动创建目录(supervisord 会自动创建日志文件)
    16 stdout_logfile=/opt/redis/logs/redis.log
    17 stopasgroup=false     ;默认为false,进程被杀死时,是否向这个进程组发送stop信号,包括子进程
    18 killasgroup=false     ;默认为false,向进程组发送kill信号,包括子进程
    启动supervisor:
      supervisord -c /etc/supervisord.conf #启动supervisor
    启动xx项目:
      supervisorctl -c /etc/supervisord.conf restart xx  #重启xx项目

    这样就简单的实现了进程命令的自动管理!!
    附上部分其他命令参数:
     1 更新新的配置到supervisord    
     2     supervisorctl update
     3 重新启动配置中的所有程序
     4     supervisorctl reload
     5 启动某个进程
     6     supervisorctl start xx
     7 查看正在守候的进程
     8     supervisorctl
     9 停止某一进程
    10     pervisorctl stop xx
    11 重启某一进程 
    12     supervisorctl restart xx
    13 停止全部进程
    14     supervisorctl stop all
    15 注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。
  • 相关阅读:
    托付和事件的使用
    在使用supervisord 管理tomcat时遇到的小问题
    无法安装vmware tools的解决方PLEASE WAIT! VMware Tools is currently being installed on your system. Dependin
    (转)Openlayers 2.X加载高德地图
    (转)openlayers实现在线编辑
    (转) Arcgis for js加载百度地图
    (转)Arcgis for js加载天地图
    (转) 基于Arcgis for Js的web GIS数据在线采集简介
    (转) Arcgis for js之WKT和GEOMETRY的相互转换
    (转)Arcgis for Js之Graphiclayer扩展详解
  • 原文地址:https://www.cnblogs.com/NoteBook3013/p/10305767.html
Copyright © 2011-2022 走看看