提升Ubuntu上PHP-FPM性能可从配置优化、代码优化、系统优化三方面入手,具体如下:
dynamic
模式,根据负载动态调整进程数:pm = dynamic
pm.max_children
:按服务器内存和进程内存占用设置(如pm.max_children = 50
)。pm.start_servers
:建议设为CPU核心数的4倍(如pm.start_servers = 8
)。pm.min_spare_servers
/pm.max_spare_servers
:设为CPU核心数的2-4倍,控制空闲进程。pm.max_requests
:设为500-1000,定期重启进程释放内存。php.ini
中启用并配置:opcache.enable=1
opcache.memory_consumption=128
(根据内存调整)opcache.max_accelerated_files=4000
。request_terminate_timeout
(如30s
)防止慢请求占用资源。slowlog=/var/log/php-fpm/slow.log
,request_slowlog_timeout=5s
。unset()
)。ulimit -n 65535
。net.core.somaxconn
)以提升网络性能。sudo systemctl restart php{version}-fpm
。注意:修改配置前需在测试环境验证,生产环境调整需逐步优化并监控效果[1,2,3,5,6,7,8,9,10,11]。