使用php-fpm状态页观察当前的php-fpm状态
对于php-fpm的參数设置,非常多情况下有这种疑问,就是内置的几个參数比如pm.max_children,pm.start_servers等这几个參数究竟该设置最多为多少才合适。事实上这几个參数往往取决于当前的连接数情况,而大多数情况下,我们非常难断定当前的连接数情况对于我们的pm等几个參数是否合适。所以借助于php-fpm状态页能够非常方便的告诉我们这几个參数的设置是否合适。
要开启php-fpm的状态页事实上非常easy在nginx的配置文件里增加:
location /status {
auth_basic "status page";
auth_basic_user_file /etc/nginx/login;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
}
上面的auth_basic和auth_basic_user_file不是必须的,但这些都是敏感信息,一般不能让其他人看到,所以这里做了认证。在php-fpm.conf中打开:
pm.status_path = /status
然后在浏览器中打开localhost/status就能够查看到当前的状态信息了
pool: www
process manager: dynamic
start time: 17/Aug/2014:15:25:50 -0400
start since: 7702
accepted conn: 1486
listen queue: 0
max listen queue: 129
listen queue len: 128
idle processes: 9
active processes: 1
total processes: 10
max active processes: 20
max children reached: 2
slow requests: 0
以下介绍每一个參数的作用:
pool:php-fpm池的名称,一般都是应该是www
process manage:进程的管理方法,php-fpm支持三种管理方法,各自是static,dynamic和ondemand,普通情况下都是dynamic
start time:php-fpm启动时候的时间,无论是restart或者reload都会更新这里的时间
start since:php-fpm自启动起来经过的时间,默觉得秒
accepted conn:当前接收的连接数
listen queue:在队列中等待连接的请求个数,假设这个数字为非0,那么最好添加进程的fpm个数
max listen queue:从fpm启动以来,在队列中等待连接请求的最大值
listen queue len:等待连接的套接字队列大小
idle processes:空暇的进程个数
active processes:活动的进程个数
total processes:总共的进程个数
max active processes:从fpm启动以来,活动进程的最大个数,假设这个值小于当前的max_children,能够调小此值
max children reached:当pm尝试启动很多其它的进程,却由于max_children的限制,没有启动很多其它进程的次数。假设这个值非0,那么能够适当添加fpm的进程数
slow requests:慢请求的次数,一般假设这个值未非0,那么可能会有慢的php进程,一般一个不好的mysql查询是最大的祸首。
假设想看到更加具体的信息,能够使用localhost/status?full查看每一个子进程更加额外的信息,拿当中的一个子进程来说明:
pid: 6917
state: Idle
start time: 17/Aug/2014:15:27:46 -0400
start since: 8399
requests: 35
request duration: 69295
request method: GET
request URI: /member.php?mod=logging&action=login&infloat=yes&frommessage&inajax=1&ajaxtarget=messagelogin
content length: 0
user: -
script: /usr/local/nginx/html/member.php
last request cpu: 72.16
last request memory: 3145728
这里的都比較好理解,主要看下content length和user
content length:这里记录的是POST请求的内容长度.
user:假设设置了PHP_AUTH_USER就会显示对于的值,否则显示为0.
这里须要注意的是假设state的状态为空暇的话,那么这些相关的信息将会以最后请求的服务相关,否则信息取决于当前请求的服务.
使用php-fpm状态页观察当前的php-fpm状态的更多相关文章
- Nginx 高级配置-状态页配置
Nginx 高级配置-状态页配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 建议将nginx的监控状态的值通过zabbix或者Open-Falcon之类的监控工具来监控状态,并 ...
- nginx启用status状态页
nginx和php-fpm一样都内建了一个状态页,通过查看状态页信息可以连接到nginx服务负载情况,还可以利用状态页信息配zabbix监控,这里先介绍nginx的status状态页的使用. stau ...
- TCP状态转换图、滑动窗口、半连接状态、2MSL
一.TCP状态转换图 下图对排除和定位网络或系统故障时大有帮助,也帮助我们更好的编写Linux程序,对嵌入式开发也有指导意义. 先回顾一下TCP建立连接的三次握手过程,以及关闭连接的四次握手过程 ...
- TCP的状态兼谈Close_Wait和Time_Wait的状态
原文链接: http://www.2cto.com/net/201208/147485.html TCP的状态兼谈Close_Wait和Time_Wait的状态 一 TCP的状态: 1).LIST ...
- 重学 Java 设计模式:实战状态模式「模拟系统营销活动,状态流程审核发布上线场景」
作者:小傅哥 博客:https://bugstack.cn - 原创系列专题文章 沉淀.分享.成长,让自己和他人都能有所收获! @ 目录 一.前言 二.开发环境 三.状态模式介绍 四.案例场景模拟 1 ...
- jq:翻页时,保存上页多选框checkbox选中状态
这里主要讲一种:中间的 checkbox 是 通过Ajax调出的. 则翻页时,为了保存上页的选定状态,可在页面中定义一个变量,用来存储选中状态的值. <input class="cli ...
- 查看Tomcat状态页,管理app,主机管理
Server Status 通过点击这个按钮我们可以查看Tomcat的状态,点击,弹出403错误页面 通过查看官方文档 因此,创建manager.xml # cat /usr/local/tomcat ...
- HAProxy的状态页
启用基于程序编译时默认设置的统计报告,不能用于"frontend"区段,只要没有另外的其他设定,他们就会使用如下的配置stats uri : /haproxy$statsst ...
- 11月6日下午PHP注册审核(审核状态控制登录、可以更改审核状态)
1.创建登录界面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
随机推荐
- ASIHTTPRequest 对GET POST 请求简包
1.ASIHTTPRequest一个简短的引论 github下载链接https://github.com/pokeb/asi-http-request 2.ASIHTTPRequest 对GET和PO ...
- Hosting WCF Service
之前在博客几个实例DemoWCF服务寄宿到控制到应用程序中,这篇来总结一下,经常使用的几种宿主的方式. 1.Self-Hosting 一个WCF服务可以寄宿在控制台应用程序或者WinForms app ...
- Codeforces 12D Ball 树形阵列模拟3排序元素
主题链接:点击打开链接 #include<stdio.h> #include<iostream> #include<string.h> #include<se ...
- ISAPI_Rewrite不起作用的N种原因
现在经常用到ISAPI_Rewrite,遇到的问题就是在本地测试的时候,一切没有问题,到服务器上,竟然不起作用.郁闷~经过我的一些探索,发现了比起作用的原因如下:1.IIS_WPG对ISAPI_Rew ...
- 一切从编辑器说起:web前端代码编辑器
俗话说:工欲善其事,必先利其器. 工欲善其事必先利其器.谓工匠想要使他的工作做好,一定要先让工具锋利.比喻要做好一件事,准备工作非常重要. 前端写代码也是一样,需要一个好的适合自己的代码编辑器. 我想 ...
- 算法导论学习---红黑树具体解释之插入(C语言实现)
前面我们学习二叉搜索树的时候发如今一些情况下其高度不是非常均匀,甚至有时候会退化成一条长链,所以我们引用一些"平衡"的二叉搜索树.红黑树就是一种"平衡"的二叉搜 ...
- MemCache分布式内存对象缓存系统
MemCache超详细解读 MemCache是一个自由.源码开放.高性能.分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而 ...
- 付款页面DEMO
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHRxdWVlbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- 自己写CPU第五级(4)——逻辑、实现移动和空指令
我们会继续上传新书<自己写CPU>(未公布).今天是18片,我每星期试试4 5.5 改动OpenMIPS以实现逻辑.移位操作与空指令 为了实现逻辑.移位操作与空指令(当中nop.ssnop ...
- 简单工厂模式—>工厂模式
一.功能 根据前一篇博客:策略模式+单例模式+简单工厂模式:推送服务,想试用一下工厂模式:将之前的简单工厂模式格式化为工厂模式. 二.实现 修改前:简单工厂 public static class P ...