Linux查看连接数,并发数
netstat 显示协议统计和当前 TCP/IP 网络连接。
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]
-a 显示所有连接和侦听端口。//常用
-b 显示在创建每个连接或侦听端口时涉及的可执行程序。//常用
在某些情况下,已知可执行程序承载多个独立的
组件,这些情况下,显示创建连接或侦听端口时涉
及的组件序列。此情况下,可执行程序的名称
位于底部[]中,它调用的组件位于顶部,直至达
到 TCP/IP。注意,此选项可能很耗时,并且在您没有
足够权限时可能失败。
-e 显示以太网统计。此选项可以与 -s 选项结合使用。//常用
-f 显示外部地址的完全限定域名(FQDN)。//没用
-n 以数字形式显示地址和端口号。 //常用
-o 显示拥有的与每个连接关联的进程 ID。//没用
-p proto 显示 proto 指定的协议的连接;proto 可以是下列任
何一个: TCP、UDP、TCPv6 或 UDPv6。
如果与 -s 选项一起用来显示每个协议的统计,proto 可以是下列任
何一个: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP
或 UDPv6。
-r 显示路由表。//常用
-s 显示每个协议的统计。默认情况下,显示 //有用
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6
的统计;-p 选项可用于指定默认的子网。
-t 显示当前连接卸载状态。 //没用
interval 重新显示选定的统计,各个显示间暂停的间隔秒数。
按 CTRL+C 停止重新显示统计。如果省略,则 netstat
将打印当前的配置信息一次。
查看apache当前并发访问数:
netstat -an | grep ESTABLISHED | wc -l
对比httpd.conf中MaxClients的数字差距多少。
查看有多少个进程数:
ps aux|grep httpd|wc -l
可以使用如下参数查看数据
server-status?auto
#ps -ef|grep httpd|wc -l
1388
统计httpd进程数,连个请求会启动一个进程,使用于Apache服务器。
表示Apache能够处理1388个并发请求,这个值Apache可根据负载情况自动调整。
#netstat -nat|grep -i "80"|wc -l
4341
netstat -an会打印系统当前网络链接状态,而grep -i "80"是用来提取与80端口有关的连接的,wc -l进行连接数统计。
最终返回的数字就是当前所有80端口的请求总数。
#netstat -na|grep ESTABLISHED|wc -l
376
netstat -an会打印系统当前网络链接状态,而grep ESTABLISHED 提取出已建立连接的信息。 然后wc -l统计。
最终返回的数字就是当前所有80端口的已建立连接的总数。
netstat -nat||grep ESTABLISHED|wc - 可查看所有建立连接的详细记录
查看Apache的并发请求数及其TCP连接状态:
Linux命令:
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
其中的
SYN_RECV表示正在等待处理的请求数;
ESTABLISHED表示正常数据传输状态;
TIME_WAIT表示处理完毕,等待超时结束的请求数。