参考链接 http://supervisord.org/running.html
supervisor 是linux进程监控软件, 可以在laravel queue work| queue listen 失败的时候 自动重启进程。
所以指定下面的流程 简直是完美:
用户注册 --> 触发监听事件 --> 触发邮件发送队列
使用 supervisor 监听队列 , 两个字的评价 省心
supervisor 也可以对常驻脚本进行监控(项目中的利器)
简单使用:
sudo apt install supervisor
/etc/supervisor/conf.d 可以建立任意数目的配置文件后缀是.conf(这点类似于nginx)
常规的配置:
[program:community-default]
process_name=%(program_name)s_%(process_num)02d
command=php /home/ubuntu/common/community/artisan queue:work --queue=default --sleep=3 --tries=3 redis
autostart=true
autorestart=true
user=ubuntu
numprocs=2
redirect_stderr=true stdout_logfile=/home/ubuntu/common/community/storage/worker.log
启动:
sudo supervisorctrl reread // 重新读取配置文件
sudo supervisorctrl udpate // 加载配置文件,删除或者新增一些新的内容
sudo supervisorctrl start/restart all // 开启全部
注意:
supervisor restart 不会重新读取, 加载配置文件