php-fpm 性能最大化

PHP-FPM是一个 PHP FastCGI 管理器, FPM (FastCGI Process Manager)是一个PHP的进程管理器, 包含 master 进程和 worker 进程两种进程:master 进程只有一个,负责监听端口,接收来自 Web Server 的请求,而 worker 进程则一般有多个
PHP-FPM提供了更好的PHP 进程管理 方式,可以有效控制内存和进程、可以平滑 重载 PHP配置

查看php-fpm进程数: ps aux | grep -c php-fpm

全局配置:一定时间内进程失效,让php-fpm重启
emergency_restart_threshold=60
emergency_restart_interval=1m
进程池配置:
user=运行php的非root用户
group=运行php的非root用户组
设置接受fast_cgi的请求地址:
listen=127.0.0.1:9000或/path/to/unix/socket
设置允许连接到Fastcg的服务器IP地址:
listen.allowed_clients=127.0.0.1
运行模式:statis/dynamic/ondemand
固定数量的子进程:
pm=static
pm.max_children=20
默认配置:通过进程范围与闲置进程控制
pm=dynamic
pm.start_servers=10
pm.max_children=30
pm.min_spare_servers=2
pm.max_spare_servers=4
最大化优化服务器响应:进程闲置N秒后就会被杀掉
pm=ondemand
pm.process_idle_timeout=5;

内存泄漏:负载大大,内存迅速增加,请求会被php-cgi回收内存,但不会释放给系统
方案:修改:php-fpm;max_requests=1000、max_chidren

你可能感兴趣的:(PHP,Linux)