生产环境中使用 supervisor 运行队列任务
不说废话,直接上干货:
首先肯定需要安装 supervisor
这个包,我的服务器是 centos 7,使用 yum install supervisor
命令装这个包,
在 centos 7 系统中,supervisor 的配置文件默认存放路径是 /etc/supervisord.conf
,修改配置文件:
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /path/to/your-project/artisan queue:listen --tries=3
autostart=true
autorestart=true
user=nobody
numprocs=8
redirect_stderr=true
stdout_logfile=/path/to/your-project/worker.log
然后启动 supervisord
服务,使用
supervisord
进程起来之后,再执行以下命令:
supervisorctl start laravel-worker:*
:+1: 工程师笔记,靠谱
当numprocs设置成8时,有可能会重复执行脚本