以下是CentOS服务器上优化PHP性能的关键技巧:
-
启用并配置OPCache
- 安装:
yum install php-opcache - 编辑
/etc/php.ini,设置:opcache.enable=1 opcache.memory_consumption=128 # 根据服务器内存调整 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 # 生产环境建议设为0 - 重启PHP-FPM:
systemctl restart php-fpm
- 安装:
-
优化PHP-FPM配置
- 编辑
/etc/php-fpm.d/www.conf,调整进程参数:pm=dynamic pm.max_children=50-200 # 根据服务器资源调整 pm.start_servers=10 pm.min_spare_servers=5 pm.max_spare_servers=20 pm.max_requests=500 # 避免内存泄漏 - 启用慢日志:
request_slowlog_timeout=10,定位性能瓶颈
- 编辑
-
调整php.ini核心参数
- 内存与文件上传:
memory_limit=256M upload_max_filesize=50M post_max_size=50M - 禁用不必要的函数(生产环境):
disable_functions=exec,system,shell_exec - 启用输出缓冲:
output_buffering=4096
- 内存与文件上传:
-
使用缓存技术
- 缓存频繁访问数据:Memcached/Redis(需安装扩展并配置)
- 静态资源分离:通过Nginx反向代理处理静态文件,减轻PHP负载
-
代码级优化
- 减少循环嵌套和冗余查询,使用高效算法。
- 利用Xdebug或Blackfire分析性能瓶颈,优化慢函数
-
服务器与系统优化
- 增加文件描述符限制:在
/etc/security/limits.conf中设置nofile=65535。 - 启用JIT编译(PHP 8+):编辑
/etc/php.ini添加opcache.jit_buffer_size=100M - 监控工具:使用
top、htop、Zabbix等实时监控资源使用情况
- 增加文件描述符限制:在
注意:修改配置前需备份文件,建议在测试环境验证后再应用到生产环境。