優化Ubuntu PHP內存使用可從配置、代碼、工具及系統層面入手,具體方法如下:
調整PHP配置文件
php.ini:
memory_limit(如設為128M或256M),避免單個腳本占用過多內存。opcache.enable=1,設置opcache.memory_consumption(如64-128M),緩存編譯后的代碼以減少內存消耗。/etc/php/{version}/fpm/pool.d/www.conf):
dynamic模式,合理設置pm.max_children(根據服務器內存計算,如(總內存-預留內存)/單個進程內存)、pm.start_servers(建議CPU核心數×2)等參數,避免進程過多占用內存。優化代碼邏輯
unset()函數避免內存泄漏。yield)逐行處理。gc_collect_cycles()。利用緩存系統
監控與調優工具
top/htop實時監控內存占用,定位異常進程。/var/log/php-fpm.log),分析慢請求或異常內存使用。系統級優化
注意:優化后需重啟PHP-FPM服務使配置生效,且需根據實際業務負載調整參數,避免過度優化影響性能。