在Ubuntu上安装Supervisor 监听laravel/lumen队列消息

sudo apt-get install supervisor

主管配置文件通常存储在目录中。在此目录中,可以创建任意数量的配置文件,这些文件指导主管如何监视您的过程。例如,让我们创建一个启动并监视过程文件

在/etc/supervisor/conf.d目录下创建laravel-worker.conf

 

编辑 laravel-worker.conf (sudo vim 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 要给写入的权限
创建配置文件后,您可以使用以下命令更新Supervisor配置并启动过程:
sudo supervisorctl reread

sudo supervisorctl update

sudo supervisorctl start laravel-worker:*
这里我遇见一个问题 全部都启动失败:

 

 

于是我去查看了刚刚配置好的错误日志文件

 

 

 我发现是因为我原封不动的把文档例子复制过来了 没有修改成我的项目的路径

 

修改路径之后再次启动

sudo supervisorctl reread

sudo supervisorctl update

sudo supervisorctl start laravel-worker:*

这次没有报错
sudo supervisorctl status

 

 查看suprvisorctl运行情况,都在运行

 

 

 这时候正常访问带有推送队列任务的接口,通过查看job表可以看到队列任务,过一会就会被执行

文档地址:https://laravel.com/docs/5.1/queues#supervisor-configuration

 

posted @ 2020-04-02 13:38  冷空气的清晰  阅读(302)  评论(0编辑  收藏  举报