首頁  >  文章  >  php框架  >  教你用supervisor管理laravel常駐任務(隊列等)配置

教你用supervisor管理laravel常駐任務(隊列等)配置

藏色散人
藏色散人轉載
2020-10-26 14:07:102931瀏覽

生產環境中需要一個可靠的進程管理工具來幫助laravel保持任務進程的狀態,supervisor是非常廣泛的選擇

教你用supervisor管理laravel常駐任務(隊列等)配置

一。安裝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组下的所有进程

以上是教你用supervisor管理laravel常駐任務(隊列等)配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除