Linux后台进程管理利器:supervisor

小白可以用的-Linux后台进程管理利器:supervisor

1.前言:

Linux的后台进程运行有好几种方法:如nohup、screen等.但是,如果是一个服务程序,要可靠地在后台运行,就需要把它做成daemon,最好还能监控进程状态,在意外结束时能自动重启.

2.supervisor:

supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启.

3.使用:

(1).安装supervisor:

apt-get install supervisor

(2).supervisor安装完成后会生成三个执行程序:

  • supervisord:守护进程服务(用于接收进程管理命令)
  • supervisorctl:客户端(用于和守护进程通信,发送管理进程的指令)
  • echo_supervisord_conf:生成初始配置文件程序

(3).使用Laravel队列,会用到php artisan queue:work命令来监听队列.可以给开发的应用程序单独编写一个配置文件,让supervisor来管理它.每个进程的配置文件都可以单独分拆,放在/etc/supervisor/conf.d/目录下,新增一个Supervisor的配置文件.以.conf作为扩展名,以下定义了一个lumen-queue的进程:

[program:lumen-queue]
process_name=%(program_name)s_%(process_num)02d
command=php artisan queue:work       # 命令
autostart=true
autorestart=true
directory=/var/www/Service      # 进程的当前目录
user=www-data                   # 进程运行的用户身份
numprocs=8                      # 启动多少个进程来监听Laravel队列
redirect_stderr=true
stdout_logfile=/var/log/supervisor/laravel-queue.log


[program:lumen-queue]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/Service/artisan queue:work redis --daemon --sleep=3 --tries=3
autostart=true
autorestart=true
user=root
numprocs=5
redirect_stderr=true
stdout_logfile=/var/log/supervisor/laravel-queue.log
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值