在centos上安装Supervisor 监听laravel/lumen队列消息
我们的测试机是ubuntu系统,但是生产环境是centos ,使用yum安装Supervisor后发现目录结构文件位置完全不一样,记录一下遇见的问题免得下次掉坑里
安装Supervisor
sudo yum install supervisor
因为laravel官方文档中给出的安装教学是把配置文件是放在/etc/suprvisor/中的,所以我也是按文档来的
切换到/etc下,创建supervisor文件夹,并在supervisor下再创建conf.d文件夹,进入conf.f文件,按文档所示创建laravel-worker.conf文件
sudo touch laravel-worker.conf
按文档例子编辑 laravel-worker.conf
[program:laravel-worker] process_name=%(program_name)s_%(process_num)02d command=php /你的项目目录/artisan queue:work sqs(这是你的队列驱动,根据你在.env文件中配置的QUEUE_DRIVER参数,我是QUEUE_DRIVER=database,database驱动) --sleep=3 --tries=3 --daemon autostart=true autorestart=true user=填写你的服务器登录用户 numprocs=8 redirect_stderr=true stdout_logfile=/你想存放日志文件的目录/worker.log
这时候切换到/etc/下编辑supervisor文件的配置文件supervisord.conf 在文件最后一行可以看到
讲这个路径修改成刚刚咱们按照文档指示创建好的配置文件目录 /etc/supervisor/conf.d/*.conf,确保supervisor读取刚刚写好的配置文件
这时候我按文档指示启动遇见一个错误
sudo supervisorctl reread
指定文件启动,这次没有报错
/usr/bin/python2 /usr/bin/supervisord -c /etc/supervisord.conf
安文档指示启动全部都没有报错
sudo supervisorctl reread sudo supervisorctl update sudo supervisorctl start laravel-worker:*
查看运行情况,都没问题
sudo supervisorctl status
文档地址:https://laravel.com/docs/5.1/queues#supervisor-configuration