下面由Laravel教程栏目给大家介绍用supervisor管理laravel常驻任务(队列等)配置的方法,希望对需要的朋友有所帮助!
生产环境中需要一个可靠的进程管理工具来帮助laravel保持任务进程的状态,supervisor是非常广泛的选择
一. 安装supervisor
ubuntu环境下:
apt install supervisor
二. 配置supervisor
配置文件有两个位置:
主配置文件:/etc/supervisor/supervisord.conf
通常用于配置全局通用的配置
个性化配置文件:/etc/supervisor/conf.d/*.conf
通常用于配置单个进程组或者进程的个性化配置,类似于nginx配置时把多个server单独放在独立的配置文件里
supervisor的配置说明文档:https://www.rddoc.com/doc/Supervisor/3.3.1/zh/configuration/#supervisord-section-settings
三.举个例子:
// 在/etc/supervisor/conf.d/路径下建立一个 foo.conf 文件,存放一个组名为foo的配置 [group:foo] // 建立一个进程组 programs=bar // 进程组包括的进程,多个进程用逗号隔开 [program:bar] // 建立一个进程 process_name=%(program_name)s_%(process_num)02d // 启动的进程名 : bar_00 bar_01 ... command=php /data/www/laravel-path/artisan queue:work --sleep=3 --tries=3 // 执行的进程命令 autostart=true // 随supervisor启动自动启动 autorestart=true user=deploy // 执行进程的用户 numprocs=8 // 进程数 redirect_stderr=true stdout_logfile=/data/logs/foo.log
启动supervisor: supervisord -c /etc/supervisord.conf
进入supervisor操作台:supervisorctl
supervisorctl> reread // 读取新增加的配置 supervisorctl> update supervisorctl> start foo:* //启动foo组下的所有进程
Atas ialah kandungan terperinci 教你用supervisor管理laravel常驻任务(队列等)配置. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!