PHP性能优化
PHP性能优化
php-fpm.conf配置
php-fpm工作方式
static
如果设置成static
,php-fpm
进程数自始至终都是pm.max_children
指定的数量,不再增加或减少dynamic
如果设置成dynamic
,则php-fpm
进程数是动态的,最开始是pm.start_servers
指定的数量,如果请求较多,则会自动增加,保证 空闲的进程数不小于pm.min_spare_servers
,如果进程数较多,也会进行相应清理,保证多余的进程数不多于pm.max_spare_servers
。
这两种不同的进程管理方式,可以根据服务器的实际需求来进行调 整
####pm.max_children
:静态方式下开启的 php-fpm 进程数量。
####pm.start_servers
:动态方式下的起始 php-fpm 进程数量。
####pm.min_spare_servers
:动态方式下的最小 php-fpm 进程数量。
####pm.max_spare_servers
:动态方式下的最大 php-fpm 进程数量。
其他优化方法:
- 尽量少安装 PHP 模块,最简单是最好(快)的
- PHP FastCGI 子进程数(建议压力测试来得出自己服务器合理的值)
- socket 连接 FastCGI,/dev/shm 是内存文件系统
Linux 下增加文件打开数
123456cat >> /etc/security/limits.conf <<EOF* soft nproc 65535* hard nproc 65535* soft nofile 65535* hard nofile 65535EOF增加 PHP-FPM 打开文件描述符的限制
12#vi $php_install_dir/etc/php-fpm.confrlimit_files = 51200使用 php 代码加速器,例如 eAccelerator、XCache、APC、OpCache