ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Laravel 队列监听Superviso进程管理(消息队列后台监听)

2026/8/4 8:49:18 拓冰建站 浏览量
Laravel 队列监听Superviso进程管理(消息队列后台监听)

一、安装 Supervisor

在 Ubuntu 系统上,可以使用以下命令安装 Supervisor:

sudo apt-get install supervisor

在CentOS:

sudo yum install supervisor

二、创建 Supervisor 配置文件

安装完成后,Supervisor 的配置文件会被放置在 /etc/supervisor/conf.d/ 目录下

在 /etc/supervisor/conf.d/ 目录下创建一个新的配置文件,例如 laravel-worker.conf

vi /etc/supervisor/conf.d/laravel-worker.conf

编辑配置文件:
在打开的文件中,添加以下配置:

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /path/to/artisan queue:work kafka --queue=kafka --sleep=3 --tries=3
autostart=true
autorestart=true
user=your_username
numprocs=8
redirect_stderr=true
stdout_logfile=/path/to/worker.log
```
请根据你的实际情况进行修改:
- `command`:用于启动队列监听器的命令。确保替换 `/path/to/artisan` 为你的 Laravel 项目的 `artisan` 文件的绝对路径。
- `user`:用于运行监听器的用户。将 `your_username` 替换为你的实际用户名。
- `numprocs`:指定要启动的监听器进程数。根据服务器的配置和需求进行调整。
- `stdout_logfile`:指定日志文件路径,用于记录监听器的输出日志。

三、更新 Supervisor 配置

运行以下命令,以更新 Supervisor 的配置并启动 Laravel 队列监听器:

#校验配置文件是否有修改supervisorctl reread#更新配置supervisorctl update#查看supervisor状态supervisorctl status

其余命令:

 # 开机自启动systemctl enable supervisord# 查看是否存在supervisord进程ps -ef | grep supervisord        #给执行权限chmod -R +x /etc/supervisor/supervisord.conf

现在,Supervisor 将会管理 Laravel 队列监听器进程,并在服务器启动时自动启动这些进程。如果进程意外终止,Supervisor 会自动重新启动它们。你可以使用 supervisorctl 命令来管理和监控进程的状态。

请注意,根据你的实际需求和服务器配置,可能需要调整配置文件中的参数,如进程数 (numprocs)、重试次数 (--tries)、休眠时间 (--sleep) 等。确保根据你的项目需求和服务器资源进行适当的配置。