开启nginx状态监控,查看web服务器的并发连接数

[复制链接] |主动推送
查看56 | 回复0 | 2024-9-11 08:22:27 | 显示全部楼层 |阅读模式
Nginx的ngx_http_stub_status_module提供能够获取Nginx自上次启动以来的工作状态的功能。如果需要启用此功能的话,需要在编译的过程中添加如下参数:“--with-http_stub_status_module”,该模块在需要放到server里面的。
1、修改nginx.conf的文件例如:
server {
listen 80;
server_name 192.168.1.100;
root /home/www/;
index  index.html index.htm ;
access_log off;
location ~* .(ftpquota|htaccess|asp|aspx|jsp|asa|mdb)$ {
deny  all;
}
location ~ ^/Nginxstatus/ {
stub_status on;
access_log off;
}
上面的代码红色部分为nginx的监控代?。
2、重启nginx服务。
#/usr/local/nginx/sbin/nginx  -s  reload
3、在浏览器的地址栏里输入“http://192.168.1.100/Nginxststus/”就ok了。截图如下:
Active connections:2
server accepts handled requests
  1077  1077  2353
Reading:0 Writing:2 Waiting:0

4、解释如下:
Active connections: 2   //nginx 正处理的活动连接数2个。
server accepts handled requests
1077 1077 2353        //nginx启动到现在共处理了1077个连接 , 成功创建1077次握手 一般跟第一个一样,差值为请求丢失数, 总共处理了2353次请求。
Reading: 0      //nginx 读取到客户端的 Header 信息数。
Writing: 2      //nginx 返回给客户端的 Header 信息数。
Waiting: 0      //开启 keep-alive 的情况下,这个值等于 active - (reading + writing),意思就是Nginx 已经处理完正在等候下一次请求指令的驻留连接。这个状态信息,从nginx启动算起,包括重载配置文件,也会清零。
附:用命令查看nginx和apache的并发连接数。
1、查看nginx并发进程数
ps -ef | grep nginx | wc -l
2、查看apache的并发连接数。
ps -ef | grep httpd | wc -l
3、查看mysql进程连接数:
ps -ef | grep mysqld -c
4、查看Web服务器(nginx  apache)的并发请求数及其TCP连接状态:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
LAST_ACK 5 (正在等待处理的请求数)
SYN_RECV 30
ESTABLISHED 1597 (正常数据传输状态)
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057 (处理完毕,等待超时结束的请求数)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则