优化Ubuntu上的PHP-FPM可从配置、性能、监控等方面入手,具体如下:
调整进程池参数
pm.max_children:根据内存计算(单进程约30-80MB),公式为(可用内存-预留内存)/单进程内存。pm.start_servers:建议为max_children×0.2。pm.min/max_spare_servers:分别设置为max_children×0.1和0.6,避免频繁启停。pm.max_requests:设为500-1000,防止内存泄漏。启用关键优化功能
php.ini中启用并设置内存(如128MB)、文件缓存数量。opcache配置中添加opcache.jit=tracing和opcache.jit_buffer_size=64M。优化文件与连接配置
fastcgi_pass unix:/run/php/php8.x-fpm.sock),减少TCP开销。slowlog=/var/log/php-fpm/slow.log,request_slowlog_timeout=5s),定位性能瓶颈。系统级优化
www-data),避免权限问题。监控与调优
htop、top查看进程状态,或通过Prometheus+Grafana监控实时指标。systemctl restart php8.x-fpm定期重启,释放内存。注意:修改配置后需重启PHP-FPM服务,建议先在测试环境验证效果。
参考来源: