zoukankan      html  css  js  c++  java
  • [LINUX] 查看连接数和IO负载

    Iostat 是 sysstat 工具集的一个工具,需要安装。
      Centos的安装方式是:
      yum install sysstat
      Ubuntu的安装方式是:
      aptitude install sysstat
      使用:
      iostat -dx 显示磁盘扩展信息
      root@fileapp:~# iostat -dx
      r/s 和 w/s 分别是每秒的读操作和写操作,而rKB/s 和wKB/s 列以每秒千字节为单位显示了读和写的数据量
      如果这两对数据值都很高的话说明磁盘io操作是很频繁。

    一、查看哪些IP连接本机

    netstat -an

    二、查看TCP连接数

    1)统计80端口连接数
    netstat -nat|grep -i "80"|wc -l

    2)统计httpd协议连接数
    ps -ef|grep httpd|wc -l

    3)、统计已连接上的,状态为“established
    netstat -na|grep ESTABLISHED|wc -l

    4)、查出哪个IP地址连接最多,将其封了.
    netstat -na|grep ESTABLISHED|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n

    netstat -na|grep SYN|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n

    ------------------------------------------

    首先 、用top命令查看

      top - 16:15:05 up 6 days,  6:25,  2 users,  load average: 1.45, 1.77, 2.14

      Tasks: 147 total,   1 running, 146 sleeping,   0 stopped,   0 zombie

      Cpu(s):  0.2% us,  0.2% sy,  0.0% ni, 86.9% id, 12.6% wa,  0.0% hi,  0.0% si

      Mem:   4037872k total,  4003648k used,    34224k free,     5512k buffers

      Swap:  7164948k total,   629192k used,  6535756k free,  3511184k cached

      查看12.6% wa

      IO等待所占用的CPU时间的百分比,高过30%时IO压力高

      其次、 用iostat -x 1 10

      如果 iostat 没有,要  yum install sysstat

      avg-cpu:  %user   %nice    %sys %iowait   %idle

      0.00       0.00     0.25    33.46    66.29

      Device:    rrqm/s  wrqm/s   r/s    w/s     rsec/s   wsec/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util

      sda          0.00    0.00      0.00   0.00    0.00    0.00         0.00     0.00     0.00           0.00    0.00    0.00   0.00

      sdb          0.00   1122  17.00  9.00  192.00 9216.00    96.00  4608.00   123.79   137.23 1033.43  13.17 100.10

      sdc          0.00    0.00     0.00   0.00     0.00     0.00      0.00     0.00     0.00             0.00    0.00      0.00   0.00

      查看%util 100.10 %idle 66.29

      如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

      idle小于70% IO压力就较大了,一般读取速度有较多的wait.

      同时可以结合vmstat 查看查看b参数(等待资源的进程数)

      vmstat -1

      如果你想对硬盘做一个IO负荷的压力测试可以用如下命令

      time dd if=/dev/zero bs=1M count=2048 of=direct_2G

      此命令为在当前目录下新建一个2G的文件

      我们在新建文件夹的同时来测试IO的负荷情况

      再通过如下脚本查看高峰的进程io情况

      monitor_io_stats.sh

      #!/bin/sh

      /etc/init.d/syslog stop

      echo 1 > /proc/sys/vm/block_dump

      sleep 60

      dmesg | awk '/(READ|WRITE|dirtied)/ {process[$1]++} END {for (x in process)

      print process[x],x}' |sort -nr |awk '{print $2 " " $1}' |

      head -n 10

      echo 0 > /proc/sys/vm/block_dump

      /etc/init.d/syslog start

      或者用iodump.pl脚本

  • 相关阅读:
    方便学习的小idea---技术文章搜索--提高搜索的效率,准确性,有用性
    学习技术的思考
    python学习记录
    大数据的5个大
    业务系统与门户集成
    项目的集成
    记录说的好的话语
    Java过滤器引发的异常:Resource interpreted as Stylesheet but transferred with MIME type text/html
    11g创建表空间和用户(不区分大小写)与导入导出命令
    3. mysql中常用的字符与时间函数
  • 原文地址:https://www.cnblogs.com/linn/p/5887998.html
Copyright © 2011-2022 走看看