實時檢視及監控PHP-FPM的執行狀態
阿新 • • 發佈:2021-10-14
開啟php-fpm.conf,配置php-fpm狀態頁選項
pm.status_path = /phpfpm_status(預設值為:status)
配置nginx.conf,新增可訪問server(不用放在http內)
server { listen 80; server_name 127.0.0.1; location /phpfpm_status { fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $fastcgi_script_name; } }
重啟或過載nginx,和php-fpm,命令如下:
service php-fpm restart
service nginx restart
可通過帶不同引數檢視php-fpm status輸出格式:
http://www.foo.bar/status #預設純文字 http://www.foo.bar/status?json #json格式 http://www.foo.bar/status?html #html格式 http://www.foo.bar/status?xml #xml格式 #full引數可檢視程序詳細資訊 http://www.foo.bar/status?full http://www.foo.bar/status?json&full http://www.foo.bar/status?html&full http://www.foo.bar/status?xml&full
PHP-FPM status引數說明:
pool – fpm池子名稱,大多數為www process manager – 程序管理方式,值:static, dynamic or ondemand. dynamic start time – 啟動日期,如果reload了php-fpm,時間會更新 start since – 執行時長 accepted conn – 當前池子接受的請求數 listen queue – 請求等待佇列,如果這個值不為0,那麼要增加FPM的程序數量 max listen queue – 請求等待佇列最高的數量 listen queue len – socket等待佇列長度 idle processes – 空閒程序數量 active processes – 活躍程序數量 total processes – 總程序數量 max active processes – 最大的活躍程序數量(FPM啟動開始算) max children reached - 大道程序最大數量限制的次數,如果這個數量不為0,那說明你的最大程序數量太小了,請改大一點。 slow requests – 啟用了php-fpm slow-log,緩慢請求的數量