Nginx状态监控有很多需要网管人员中掌握的知识,下面我们就来学些有关这方面的命令。在学习之前我们先来看看在运行的时候有哪些现实内容需要我们掌握。希望大家找到自己想要的知识。
上面是一个实际网站的配置实例,其中灰色文字为配置说明。上述配置中,首先我们定义了一个 location ~ ^/nginxstatus/,这样通过 http://www.kiko.com/nginxstatus
就可以监控到 Nginx 的运行信息,显示的内容如下:
- Active connections: 70
- server accepts handled requests
- 14553819 14553819 19239266
- Reading: 0 Writing: 3 Waiting: 67
NginxStatus 显示的内容意思如下:
active connections – 当前 Nginx 正处理的活动连接数。
server accepts handled requests -- 总共处理了 14553819 个连接 , 成功创建 14553819 次握手 ( 证明中间没有失败的 ), 总共处理了 19239266 个请求 ( 平均每次握手处理了 1.3 个数据请求 )。
reading -- nginx 读取到客户端的 Header 信息数。
writing -- nginx 返回给客户端的 Header 信息数。
waiting -- 开启 keep-alive 的情况下,这个值等于 active - (reading + writing),意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接。
Nginx状态监控的问题
这个ip_hash模块是采用IP段来做负载均衡的,IP的前三位来做的hash,也就是说
- 192.168.1.2 --> server1
- 192.168.1.12 --> server1
- 192.168.1.13 --> server1
Nginx状态监控源文件
- ngx_http_upstream_ip_hash_module.c 中
- iphp->addr[0] = p[0];
- iphp->addr[1] = p[1];
- iphp->addr[2] = p[2];
好像确实只取了前三位,我C语言不好。看的不是很明白其算法。以上就是对Nginx状态监控的详细介绍,希望大家有所收获。
【编辑推荐】