对虚拟内存统计的简短展示,vmstat 是一个常用工具(最早是几十年前为 BSD 创建的) 。它每一行打印关键的服务信息统计摘要 。
vmstat 使用参数 1 来运行的时候,是每 1 秒打印一条统计信息 。在这个版本的 vmstat 中,输出的第一行展示的是自从启动后的平均值,而不是前一秒的统计 。所以现在,可以跳过第一行,除非你要看一下抬头的字段含义 。
每列含义说明:
- r: CPU 上的等待运行的可运行进程数 。这个指标提供了判断 CPU 饱和度的数据,因为它不包含 I/O 等待的进程 。可解释为:“r” 的值比 CPU 数大的时候就是饱和的 。
- free:空闲内存,单位是 k 。如果这个数比较大,就说明你还有充足的空闲内存 。“free -m” 和下面第 7 个命令,可以更详细的分析空闲内存的状态 。
- si,so:交换进来和交换出去的数据量,如果这两个值为非 0 值,那么就说明没有内存了 。
- us,sy,id,wa,st:这些是 CPU 时间的分解,是所有 CPU 的平均值 。它们是用户时间,系统时间(内核),空闲,等待 I/O 时间,和被偷的时间(这里主要指其它的客户,或者使用 Xen,这些客户有自己独立的操作域) 。
系统时间对于 I/O 处理来说是必须的 。比较高的平均系统时间消耗,比如超过了 20%,就有必要进一步探索分析了:也有可能是内核处理 I/O 效率不够高导致 。
在上面的例子中,CPU 时间几乎都是用户级别的,说明这是一个应用级别的使用情况 。如果 CPU 的使用率平均都超过了 90% 。这不一定问题;可以使用 “r” 列来检查使用饱和度 。
4. mpstat -P ALL 1
$ mpstat -P ALL 1Linux 3.13.0-49-generic (titanclusters-xxxxx) 07/14/2015 _x86_64_ (32 CPU)07:38:49 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle07:38:50 PM all 98.47 0.00 0.75 0.00 0.00 0.00 0.00 0.00 0.00 0.7807:38:50 PM 0 96.04 0.00 2.97 0.00 0.00 0.00 0.00 0.00 0.00 0.9907:38:50 PM 1 97.00 0.00 1.00 0.00 0.00 0.00 0.00 0.00 0.00 2.0007:38:50 PM 2 98.00 0.00 1.00 0.00 0.00 0.00 0.00 0.00 0.00 1.0007:38:50 PM 3 96.97 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 3.03[...]
这个命令分打印各个 CPU 的时间统计,可以看出整体 CPU 的使用是不是均衡的 。有一个使用率明显较高的 CPU 就可以明显看出来这是一个单线程应用 。5. pidstat 1
$ pidstat 1Linux 3.13.0-49-generic (titanclusters-xxxxx) 07/14/2015 _x86_64_ (32 CPU)07:41:02 PM UID PID %usr %system %guest %CPU CPU Command07:41:03 PM 0 9 0.00 0.94 0.00 0.94 1 rcuos/007:41:03 PM 0 4214 5.66 5.66 0.00 11.32 15 mesos-slave07:41:03 PM 0 4354 0.94 0.94 0.00 1.89 8 JAVA07:41:03 PM 0 6521 1596.23 1.89 0.00 1598.11 27 java07:41:03 PM 0 6564 1571.70 7.55 0.00 1579.25 28 java07:41:03 PM 60004 60154 0.94 4.72 0.00 5.66 9 pidstat07:41:03 PM UID PID %usr %system %guest %CPU CPU Command07:41:04 PM 0 4214 6.00 2.00 0.00 8.00 15 mesos-slave07:41:04 PM 0 6521 1590.00 1.00 0.00 1591.00 27 java07:41:04 PM 0 6564 1573.00 10.00 0.00 1583.00 28 java07:41:04 PM 108 6718 1.00 0.00 0.00 1.00 0 snmp-pass07:41:04 PM 60004 60154 1.00 4.00 0.00 5.00 9 pidstat^C
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 建议收藏 一文深度讲解JVM 内存分析工具 MAT及实践
- 中药感冒药治疗感冒效果如何
- 怀孕初期如何提前补充叶酸
- 三国里的荀彧如何评价 荀彧在曹操中的地位
- 洛神花茶减肥效果如何,如何冲泡洛神花茶
- 龙井茶如何泡,西湖春茶龙井茶明前特级龙井茶
- 如何防范计算机病毒
- 普洱曼松贡茶如何喝,普洱名品
- 太上皇自称朕吗 皇上自称朕,太上皇如何自称
- 成吉思汗死后他的妃嫔如何 成吉思汗抢女人