• Linux查看并发连接数


    Linux查看并发连接数

    指令(查看Apache的并发请求数及其TCP的连接状态)

      netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

    结果

    [root@izbp10ebr6tsvo83iahgzdz ~]# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
    
    CLOSE_WAIT 3
    
    ESTABLISHED 87
    
    FIN_WAIT2 9
    
    TIME_WAIT 25

    语句解析

    命令的核心是awk指令简单的说就,用awk以 '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'规则去解析netstat -n的结果

    第一步:netstat -n,结果如下

    [root@izbp10ebr6tsvo83iahgzdz ~]# netstat -n 
    
    Active Internet connections (w/o servers)
    
    Proto Recv-Q Send-Q Local Address           Foreign Address         State      
    
    tcp        0      0 192.168.0.162:57616     100.100.30.25:80        ESTABLISHED
    
    tcp        0      0 192.168.0.162:6379      120.26.55.92:55830      ESTABLISHED
    
    tcp        0      0 192.168.0.162:55764     120.26.55.92:6379       ESTABLISHED
    
    tcp        0      0 192.168.0.162:48556     47.111.164.6:9092       ESTABLISHED
    
    tcp        0      0 192.168.0.162:55776     120.26.55.92:6379       ESTABLISHED
    
    tcp        0      0 192.168.0.162:50172     47.111.219.84:3306      ESTABLISHED
    
    tcp        0      0 192.168.0.162:55766     120.26.55.92:6379       ESTABLISHED
    
    tcp        0      0 192.168.0.162:443       101.247.3.249:41142     ESTABLISHED
    
    tcp        0      0 192.168.0.162:55792     120.26.55.92:6379       ESTABLISHED
    
    tcp        0      0 192.168.0.162:6379      120.26.55.92:55832      ESTABLISHED
    
    tcp        0      0 192.168.0.162:443       101.247.3.249:41082     FIN_WAIT2  
    
    tcp        0      0 192.168.0.162:27017     119.61.6.133:53930      ESTABLISHED
    
    tcp        0      0 192.168.0.162:34212     120.26.55.92:27017      ESTABLISHED
    
    tcp        0      0 192.168.0.162:55830     120.26.55.92:6379       ESTABLISHED
    
    tcp        0      0 192.168.0.162:443       49.98.141.94:23375      TIME_WAIT  
    
    tcp        0      0 192.168.0.162:6379      120.26.55.92:55782      ESTABLISHED

    这里特别留意下第一列Proto和最后一列state

    第二步:awk的解析,规则是 '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}',awk是逐行解析;

      2-1- /^tcp/,正则匹配当前行数据是以tcp开头

      2-2- $NF,是指当前行的最后一个字段,比如ESTABLISHED

      2-3- S[$NF],以$NF为index,建立数组S

      2-4-  {++S[$NF]} ,每当找到一个$NF,就在给数组(下标是$NF)的值加1;

      2-5- END, 表示执行完'/^tcp/ {++S[$NF]} ,在执行后面指令

      2-6- {for(a in S) print a, S[a]},这是一个for循环语句,表示遍历数组S,同时打输出下标和值

      2-7- awk '...' 解析并输出结果

    简单版

      netstat -na | grep ESTABLISHED  | wc -l     查找连接状态为ESTABLISHED 的连接信息,并统计数量(wc表示 word count,-l表示统计行数line )

    [root@izbp10ebr6tsvo83iahgzdz ~]# netstat -na | grep ESTABLISHED  | wc -l
    114

    END

  • 相关阅读:
    随手练——几个递归小题目
    随手练——USACO 1.44 母亲的牛奶
    随手练——汉诺塔问题(递归典型)
    Linux搭建lamp(Apache+PHP+Mysql环境)centos7.2版详细教程
    Windows 环境下安装redis 及其PHP Redis扩展
    Windows系统如何安装Redis
    phpstorm配置成sublime的代码高亮逼格风格
    phpstorm-----实现实时编辑服务器代码
    如何在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作
    phpstorm取消自动保存,修改快捷键并标识修改的文件为星星标记
  • 原文地址:https://www.cnblogs.com/wobuchifanqie/p/12742586.html
Copyright © 2020-2023  润新知