zoukankan      html  css  js  c++  java
  • Supervisor操作相关的进程

    Supervisor是用Python开发的一个客户机/服务器系统,允许用户监视和控制UNIX类操作系统上的多个进程

    功能:用于监听启动停止重启一个或多个进程。

    当Supervisor管理的进程出现意外被Kill后,Supervisor监听到事件会自动启动该进程,不需要再写其他脚本去进行重启处理。

    Supervisor基本操作命令

    1.启动进程

    supervisorctl -c /etc/supervisord.conf start program_name
    

    2.停止进程

     supervisorctl -c /etc/supervisord.conf stop program_name
    

    3.重启进程

    supervisorctl -c /etc/supervisord.conf restart program_name
    

    4.启动所有进程

    supervisorctl -c /etc/supervisord.conf start all
    

    5.停止所有进程

    supervisorctl -c /etc/supervisord.conf stop all
    

    Supervisor自动重启机制

    Supervisor的 autorestart 参数可以设置进程自动重启的事件,一般设置为:

    autorestart=unexpected
    

    当进程意外被kill或出现异常时,Supervisor会自动重启该进程。

    但如果Supervisor监控的进程出现内存泄漏连接不自动释放的情况,Supervisor并不会执行重启,且Supervisor不支持定期自动重启的方法。

    Supervisor定期重启指定进程方法

    我们可以利用crontab来实现定期任务,设置如下:

    例: 每小时重启进程hello

    0 * * * * supervisorctl -c /etc/supervisord.conf restart hello

    当对于某些会出现内存泄漏或连接不自动释放的进程时,我们可以使用以上方法进行定期重启,解决内存泄漏及释放连接数。 

  • 相关阅读:
    mongo的csv文件参考
    apache安装配置
    部署Java的运行环境
    ubuntu下没有ping命令
    webbench压力测试
    判断当前是否是微信浏览器,还是APP客户端
    PHP uniqid 高并发生成不重复唯一ID
    http_build_query()函数使用方法
    防XSS攻击
    PHP中json_encode()使用须知,JSON数组和JSON对象
  • 原文地址:https://www.cnblogs.com/feixiablog/p/10039627.html
Copyright © 2011-2022 走看看