PHP-FPM运行状态的实时查看及监控详解

yipeiwu_com6年前PHP代码库

前言

大家都知道PHP-FPM内置了状态页,开启后可查看PHP-FPM的详细运行状态,给PHP-FPM优化带来帮助。

打开php-fpm.conf,配置php-fpm状态页选项

pm.status_path = /phpfpm_status

配置nginx.conf,添加可访问server

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;
  }
}

重启或重载nginx,和php-fpm

service php-fpm restart
service nginx restart

浏览器访问结果:


可通过带不同参数查看php-fpm status输出格式:

http://www.foo.bar/status #默认纯文本
http://www.foo.bar/status?json #json格式
http://www.foo.bar/status?html #html格式
http://www.foo.bar/status?xml #xml格式
 
#full参数可查看进程详细信息
http://www.foo.bar/status?full
http://www.foo.bar/status?json&full
http://www.foo.bar/status?html&full
http://www.foo.bar/status?xml&full

PHP-FPM status参数说明:

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 - 大道进程最大数量限制的次数,如果这个数量不为0,那说明你的最大进程数量太小了,请改大一点。
slow requests – 启用了php-fpm slow-log,缓慢请求的数量

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

php Try Catch异常测试

页面try catch里使用c的 c1,c1里使用b的b1,b1里使用a的a1。 默认的是:a1里抛出异常,b1里捕获a1的异常,然后再把刚才的异常抛出,c1捕获,然后抛出,最后页面捕获...

fleaphp下不确定的多条件查询的巧妙解决方法

问题:例如,实现如下 $data = array( 'id' => $_POST['id1'], 'name' => $_POST['name1'] ); $posts =...

PHP操作XML中XPath的应用示例

本文实例讲述了PHP操作XML中XPath的应用。分享给大家供大家参考,具体如下: XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。...

PHP 开发环境配置(测试开发环境)

PHP 开发环境配置(测试开发环境)

1. 创建一个文件(test.php) 我的路径如下 F:\Projects\PHPTest\test.php 2. 用记事本打开Apache配置文件 D:\Program File...

php下将XML转换为数组

复制代码 代码如下:// Xml 转 数组, 包括根键 function xml_to_array( $xml ) { $reg = "/<(\w+)[^>]*>([\...