smart022 / articles

articles_backup
MIT License
2 stars 0 forks source link

守护进程 #19

Open smart022 opened 5 years ago

smart022 commented 5 years ago

Supervisor实现进程守护 Python 进程管理工具 Supervisor 使用教程

简单记录

  1. 修改conf,添加要执行的程序 vim /etc/supervisor/supervisord.conf
    [program:nginx]  nginx为我们定义进程名, 
    directory=/home/ubuntu/webvideo/nginx 待守护程序所在根目录 
    command=/home/ubuntu/webvideo/nginx/sbin/nginx -g ‘daemon off;’ 启动程序命令 
    autostart =true 在 supervisord 启动的时候也自动启动 
    startsecs=5 启动 5 秒后没有异常退出,就当作已经正常启动了 
    autorestart =true 程序异常退出后自动重启 
    startretries=3 启动失败自动重试次数,默认是 3 
    user=ubuntu 用哪个用户启动 
    redirect_stderr=true 把 stderr 重定向到 stdout,默认 false,用于保存程序输出作为log 
    stdout_logfile_maxbytes=20MB stdout 日志文件大小,默认 50MB 
    stdout_logfile_backups=20 stdout 日志文件备份数,即一个log写满后会接这开一个log往下写 
    stdout_logfile =/home/ubuntu/webvideo/nginx/logs/nginx_stdout.loglog存储路径
  2. 执行命令
    
    #/usr/bin/supervisorctl stop all    先关闭supervisor启动脚本,之后再关闭supervisord服务
    pgrep supervisord
    kill pid # 重启
    sudo supervisord -c /etc/supervisor/supervisord.conf  # 启动

supervisorctl status #查看守护程序状态 supervisorctl stop nginx #停止nginx supervisorctl start nginx #启动nginx supervisorctl restart nginx #重启 nginx 程序 supervisorctl reread #读取有更新(增加)的配置文件,但不会启动新添加的程序 supervisorctl update #重启配置文件修改过的程序

smart022 commented 5 years ago

conde info -e : 列出虚拟环境地址