zoukankan      html  css  js  c++  java
  • 2.supervisor实时监控程序存活状态

    1.supervisor是一款python开发的一个client/server服务,是一款进程管理工具,支持linux/unix系统,但是不支持windows系统。

    它可以很方便的监听、启动、停止、重启一个或多个进程,当一个进程被意外杀死,supervisor可以立马启动进程,保证了服务

    的稳定性。

    ubuntu系列系统下

    2.安装:apt-get install supervisor

    3.配置:在目录:/etc/supervisor/conf.d 下添加 XXX.conf (XXX是你的app的名字)

    [program:videoupload] #监听的服务的名字
    command=python manage.pyc runserver 0.0.0.0:9999 #启动服务的命令
    directory=/var/websync/weibo_video_upload/uploadmodule/ #服务运行的路径
    environment=PYTHONPATH="$PYTHONPATH:/usr/local/lib" #服务运行的环境(我的是python站点)
    user=root #用哪个用户启动
    stopsignal=INT #(进程停止信号,可以使用默认)
    autostart=true #(是否随supervisord启动一起启动,默认true)
    autorestart=true # (这个是设置子进程挂掉后自动重启的情况,有三个选项,false,unexpected和true。如果为false的时候,无论什么情况下,都不会被重新启动,如果为unexpected,只有当进程的退出码不在下面的exitcodes里面定义的退 出码的时候,才会被自动重启。当为true的时候,只要子进程挂掉,将会被无条件的重启)
    startsecs=1 # (这个选项是子进程启动多少秒之后,此时状态如果是running,则我们认为启动成功了默认值为1 。。非必须设置)
    stderr_logfile=/var/log/supervisorlog/videoupload.err.log # (这个东西是设置stderr写的日志路径,当redirect_stderr=true。这个就不用设置了,设置了也是白搭。因为它会被写入stdout_logfile的同一个文件中 默认为AUTO,也就是随便找个地存,supervisord重启被清空。。非必须设置)
    stdout_logfile=/var/log/supervisorlog/videoupload.out.log

     4.操作命令:

    (1)supervisorctl status //查看状态

    (2)supervisorctl start web_server //开启一个进程

    (3)supervisorctl stop web_server //停止一个进程

    (4)supervisorctl restart web_server //重启一个进程

    (5)supervisorctl reread //重新加载配置

    (6)supervisorctl update //更新启动列表

  • 相关阅读:
    非常适合新手的一个Python爬虫项目: 打造一个英文词汇量测试脚本!
    代码遇到异常怎么办?不要慌,来看看这个!
    老司机要开车了!用Selenium+PhantomJS来抓取煎蛋网妹子图
    Python基础之格式化输出函数format()功能详解
    Python基础之常用格式化输出字符详解
    新手学python,如何才能更快升职加薪,迎娶白富美,走上人生巅峰
    ASP.NET MVC学习笔记 第二天
    ASP.NET MVC学习笔记 第一天
    ActiveMQ相关:
    WPF中使用定时器 DispatcherTimer 做TCP连接中的心跳 HeartBeat
  • 原文地址:https://www.cnblogs.com/jiangjing/p/8350032.html
Copyright © 2011-2022 走看看