Linux下查看 Apache 连接数

1、查看Apache当前并发访问数

# 对比httpd.conf中MaxClients的数字差距多少
netstat -an | grep ESTABLISHED | wc -l

在这里插入图片描述

2、查看httpd进程数(即prefork模式下Apache能够处理的并发请求数)

ps aux|grep httpd|wc -l

在这里插入图片描述

3、可以使用如下参数查看数据

ps -ef|grep httpd|wc -l
# 1
# 统计httpd进程数,连个请求会启动一个进程,使用于Apache服务器。
# 表示Apache能够处理1个并发请求,这个值Apache可根据负载情况自动调整。

在这里插入图片描述

netstat -nat|grep -i "80"|wc -l
# 2746
# netstat -an会打印系统当前网络链接状态,而grep -i "80"是用来提取与80端口有关的连接的,wc -l进行连接数统计。
# 最终返回的数字就是当前所有80端口的请求总数。

在这里插入图片描述

netstat -na|grep ESTABLISHED|wc -l
# 19
# netstat -an会打印系统当前网络链接状态,而grep ESTABLISHED 提取出已建立连接的信息。 然后wc -l统计。
# 最终返回的数字就是当前所有80端口的已建立连接的总数。

在这里插入图片描述

netstat -nat||grep ESTABLISHED|wc
# 可查看所有建立连接的详细记录

4、查看Apache的并发请求数及其TCP连接状态

netstat -n | awk '/^tcp/ {++S[$NF]} END {for (a in S) print a, S[a]}'
  • 说明
  • LAST_ACK
    关闭一个TCP连接需要从两个方向上分别进行关闭,双方都是通过发送FIN来表示单方向数据的关闭,当通信双方发送了最后一个FIN的时候,发送方此时处于LAST_ACK状态,当发送方收到对方的确认(Fin的Ack确认)后才真正关闭整个TCP连接
  • SYN_RECV
    表示正在等待处理的请求数
  • ESTABLISHED
    表示正常数据传输状态
  • FIN_WAIT1
    表示server端主动要求关闭 TCP 连接
  • FIN_WAIT2
    表示客户端中断连接
  • TIME_WAIT
    表示处理完毕,等待超时结束的请求数
  • 返回结果示例:
LAST_ACK 5
SYN_RECV 30	  # 表示正在等待处理的请求数
ESTABLISHED 1597  # 表示正常数据传输状态
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057	  # 表示处理完毕,等待超时结束的请求数

5、输出每个ip的连接数,以及总的各个状态的连接数

netstat -n | awk '/^tcp/ {n=split($(NF-1),array,":");if(n<=2)++S[array[(1)]];else++S[array[(4)]];++s[$NF];++N} END {for(a in S){printf("%-20s %s\n", a, S[a]);++I}printf("%-20s %s\n","TOTAL_IP",I);for(a in s) printf("%-20s %s\n",a, s[a]);printf("%-20s %s\n","TOTAL_LINK",N);}'

来自:https://www.cnblogs.com/ccdc/archive/2012/08/27/2658808.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值