以下是Linux下PHP-FPM進程管理的常用技巧:
sudo systemctl start/stop/restart php-fpm # systemd系統
sudo service php-fpm start/stop/restart # init.d系統
sudo systemctl status php-fpm # 查看服務狀態
ps aux | grep php-fpm # 查看進程詳情
netstat -tuln | grep php-fpm # 查看監聽端口
pm.max_children
:最大子進程數,根據服務器內存調整(建議不超過內存/200MB)。pm.start_servers
:啟動時的子進程數,建議設置為CPU核心數×2。pm.min/max_spare_servers
:空閑進程上下限,避免頻繁創建/銷毀進程。request_terminate_timeout
:單個請求超時時間,防止腳本長時間占用資源。php.ini
中配置,緩存編譯后的字節碼,顯著提升執行效率。ulimit -n
增加文件描述符限制(默認1024可能不足)。php-fpm.conf
中設置rlimit_files
限制進程最大文件打開數。/var/log/php-fpm/error.log
(定位腳本錯誤)。slowlog
參數記錄超時請求,優化性能瓶頸。top/htop
:查看CPU/內存占用。php-fpm狀態頁
:在配置中啟用pm.status_path
,通過HTTP訪問實時數據。open_basedir
參數限制腳本可訪問的目錄。php.ini
中禁用exec/passthru
等高風險函數。www-data
)運行。參考來源: