linux php以fastcgi的方式独立运行_Linux进程后台运行方式?

概述

python开发的一套通用的进程管理程序Supervisor,能将一个普通的Linux命令行进程或前端运行的程序变为后台daemon,并监控进程状态,异常退出时能自动重启。

Supervisor主要由supervisord和supervisorctl组成。

运行 Supervisor 时会启动一个进程supervisord,它负责启动所管理的进程,并将所管理的进程作为自己的子进程来启动,而且可以在所管理的进程出现崩溃时自动重启。

supervisorctl是Linux命令行管理工具,可以用来执行 stop、start、restart 等命令,来对这些子进程进行管理。

76e1c3d28d9e280951fba5edf7ff520b.png

安装

yum/apt-get install supervisor

supervisor配置文件

cat > /etc/supervisor/supervisord.conf < EOF [unix_http_server] file=/var/run/supervisor.sock ; (the path to the socket file) chmod=0700 ; sockef file mode (default 0700) [supervisord] logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP) [rpcinterface:supervisor] supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface [supervisorctl] serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket [include] files = /etc/supervisor/conf.d/*.conf EOF 

supervisor子进程配置文件

配置选项:

directory ; 命令执行目录

command ; 启动命令

environment ; 命令运行环境变量, environment=A=“1”,B=“2”

autostart = true ; 在 supervisord 启动的时候也自动启动

startsecs = 5 ; 启动 5 秒后没有异常退出,就当作已经正常启动了

autorestart = true ; 程序异常退出后自动重启

startretries = 3 ; 启动失败自动重试次数,默认是 3

user = shimeng ; 进程运行用户

loglevel=info

子进程配置文件: demo.conf,logstash.conf

示例一:

cat > /etc/supervisor/conf.d/demo.conf < EOF[program:demo]directory=/usr/local/qie_wifi/command=/usr/local/qie_wifi/py/bin/python manage.py runserver 0.0.0.0:8000 –noreload;autostart=false;autorestart=false;numprocs=1;startsecs=2;stopwaitsecs=2user=rootEOF

示例二:

cat > /etc/supervisor/conf.d/logstash.conf < EOF[program:logstash]environment=JAVA_HOME=“/usr/local/jdk/”directory=/usr/local/logstash/command=sh bin/logstash -f pipelines/test1.yml –config.reload.automaticautostart=falseuser=rootEOF

supervisor操作命令

serivce supervisor start 启动supervisor进程

supervisorctl status 查看所有进程状态

supervisorctl status logstash 查看logstash进程状态

supervisorctl update 变更或增加被管理进程配置文件后,执行后生效

supervisorctl start/stop/restart demo 启动/停止/重启被管理进程demo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值