laravel이 작업 프로세스의 상태를 유지하는 데 도움이 되는 안정적인 프로세스 관리 도구가 필요합니다. Supervisor는 매우 다양한 선택입니다.
1. Supervisor 설치
Ubuntu 환경: apt install supervisor
구성 파일에는 두 가지 위치가 있습니다. 기본 구성 파일: /etc/supervisor/supervisord.conf
는 일반적으로 전역 구성을 구성하는 데 사용됩니다. 개인화된 구성 파일 : /etc/supervisor/conf.d/*.conf
는 일반적으로 nginx를 구성할 때 여러 서버를 독립적인 구성에 배치하는 것과 유사하게 단일 프로세스 그룹 또는 프로세스의 개인화된 구성을 구성하는 데 사용됩니다. 파일의 구성 문서: https://www.rddoc.com/doc/Supervisor/3.3.1/zh/configuration/#supervisord-section-settings
/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组下的所有进程
supervisord -c /etc/supervisord.conf
🎜감독자 콘솔 입력: supervisorctl
🎜rrreee위 내용은 감독자를 사용하여 Laravel 상주 작업(큐 등) 구성을 관리하는 방법을 가르칩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!