PHP-FPM内置了状态页,开启后可查看PHP-FPM的详细运行状态,给PHP-FPM优化带来帮助。php
1.打开php-fpm.conf,配置php-fpm状态页选项:nginx
pm.status_path = /phpfpm_status //'phpfpm_status' 可自定义
2.配置nginx.conf,添加 serversocket
server { listen 80; server_name 127.0.0.1; #或域名 location /phpfpm_status { fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $fastcgi_script_name; } }
3.重启或重载nginx和php-fpmphp-fpm
- service php-fpm restart
- service nginx restart
没有意外的话,访问 http://127.0.0.1/phpfpm_status 就能够看见:优化
参数说明:spa
- pool – fpm进程池名称,大多数为www
- process manager – 进程管理方式,值:static, dynamic or ondemand. dynamic
- start time – 启动日期,若是reload了php-fpm,时间会更新
- start since – 运行时长
- accepted conn – 当前池子接受的请求数
- listen queue – 请求等待队列,若是这个值不为0,那么可能要增长FPM的进程数量
- max listen queue – 请求等待队列最高的数量
- listen queue len – socket等待队列长度
- idle processes – 空闲进程数量
- active processes – 活跃进程数量
- total processes – 总进程数量
- max active processes – 最大的活跃进程数量(FPM启动开始算)
- max children reached - 达到进程最大数量限制的次数。
- slow requests – 启用了php-fpm slow-log,缓慢请求的数量