服务器性能分析基础命令(vmstat、mpstat、pidstat)

1、vmstat
这个命令是系统自带
虚拟内存统计的缩写,可对虚拟内存、进程、cpu活动进行监控

[root@vircent7 ~]# vmstat 1 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 2791088   2108 362920    0    0     2     0   42   61  0  0 100  0  0
[root@vircent7 ~]#

procs:
r:下面的数字 显示cpu中有多少个进程正在等待
如果r列的数字,大于cpu核数(可用top命令,按H查看),那么说明现在现在有大量的进程在等待cpu进行计算,现在可能出现了cpu不够用的情况。----cpu成了我们的性能瓶颈,此时,可能需要去增加cpu数量;或者减少运行的进程数
b:下面的数字 现在有多少进程正在不可中断的休眠. 如果这个数字过大,就说明,资源不够用

memory:
swap
free
buff\buffer
+cache

swap:
si 交换分区中的换入
so 交换分区中的换出

io:
bi 块设备的读
bo 块设备的写

system:
in interrupet cpu中断 数字
cs cpu上下文切换 数学

cpu
us
sy
id
wa
st

2、mpstat命令

  • sysstat的工具包,这个工具包中带了很性能分析命令yum install sysstat -y
    • mpstat 查看cpu的相关数据
    • mpstat -P ALL 2 5
      • %usr
      • %nice
      • %sys
      • %iowait
      • %irq 硬中断
      • %soft 软中断
      • %steal
      • %guest 显示cpu或cpu运行虚拟机处理器所花费的时间占比
      • %gnice 显示cpu或cpu运行nices客户机所花费的时间占比
      • %idle

3、pidstat命令

  • pidstat: 能看磁盘、内存、cpu的数据,主要看cpu的上下文数据
    • pidstat -u -w 1 5

      • -u 用于查看cpu的数据
      • -w 看cpu的上下文数据
      • UID PID
      • cswch/s 自愿上下文切换次数
      • nvcswch/s 非自愿上下文切换次数
      • Command
    • 中断 VS 上下文切换:

      • 中断: 中断当前正在运行的,去做其他事情
      • 上下文切换: 资源的切换
      • 中断,一定会导致上下文切换,但是上下文切换,不一定会中断。

4、iostat -dx 2:查看磁盘的扩展详细信息

  • rrqm/s 合并的每秒读请求
    • wrqm/s 合并的每秒写请求
    • r/s 读/秒
    • w/s 写/s
    • rkB/s 读kb/s
    • wkB/s
    • avgrq-sz 平均情况的扇区数
    • avgqu-sz 等待大的请求数
    • await 等待的时间
    • r_await 读等待的时间
    • w_await 写等待的时间
    • svctm 实际请求的时间
    • %util 至少有一个活跃请求的所占的时间百分比

版权声明:本文为Mr_know原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。