CPU 负载观察和性能监测

CPU负载和利用率

CPU 的负载和利用率是两个不同的概念,但是他们都可以在top命令中查看。CPU利用率显示的是程序在运行期间实时占用的CPU百分比,而CPU负载显示的是一段时间内正在使用和等待使用CPU的平均任务数。CPU利用率高,并不意味着CPU的负载大。两者之间没有必然的关系。


常用命令介绍:

* uptime


首先我们需要明白load average后面的三个数字代表什么,他们分别代表前一分钟,五分钟,十五分钟的CPU负载,一般来说较重要的指标是最后一个,因为我们需要尽量避免一些突发的情况。那么这些数字处于什么区间是正常的呢?首先我们需要知道,这些数字是和你的服务器的CPU核数是紧密相关的,如果你只有一个核的话,那么数字为1.0就表示刚好在CPU的承受范围之内。这些数字当然是越小越好,但是理论上0.0~1.0之间都是正常范围。根据经验来说,如果一直在0.7上下,那么说明你可能需要花些时间来调查;如果长期徘徊或者超过1.0,那么你就需要进行修复啦!

对应的,提供查看linux下查看逻辑CPU的命令:



* top

top命令不仅可以查看当前系统的平均负载,还可以查看不同进程对于CPU、内存等资源的使用情况。


默认情况下,top命令是以CPU使用率由高到低排序显示进程信息的,在 top 信息界面按 K 键,并输入想要终止的PID,就可以直接杀死指定进程。
top的 -b 选项开启批处理模式,将每次刷新全部打印到stdout
top的 -n 选项指定退出top命令前刷新多少次信息。
top命令的输出:
  第1行:与uptime相同;
  第3行:当前的CPU运行情况:
us:非nice用户进程占用CPU的比率
sy:内核、内核进程占用CPU的比率;
ni:如果一些用户进程修改过优先级,这里显示这些进程占用CPU时间的比率;
id:CPU空闲比率,如果系统缓慢而这个值很高,说明系统慢的原因不是CPU负载高;
wa:CPU等待执行I/O操作的时间比率,该指标可以用来排查磁盘I/O的问题,通常结合wa和id判断
hi:CPU处理硬件终端所占时间的比率;
si:CPU处理软件终端所占时间的比率;
st:流逝的时间,虚拟机中的其他任务所占CPU时间的比率;


用户进程占比高,wa低,说明系统缓慢的原因在于进程占用大量CPU,通常还会伴有较低的id,说明CPU空转时间很少。
wa低,id高,可以排除CPU资源瓶颈的可能。  
wa高,说明I/O占用了大量的CPU时间,需要检查交换空间的使用,交换空间位于磁盘上,性能远低于内存,当内存耗尽开始使用交换空间时,将会给性能带来严重影响,所以对于性能要求较高的服务器,一般建议关闭交换空间。另一方面,如果内存充足,但wa很高,说明需要检查哪个进程占用了大量的I/O资源。


* iostat


如果iowait过长,说明是磁盘瓶颈;system过长,说明是内核瓶颈。

在Device一行,可以看到一些IO指标:

tps: 每秒I/O传输请求量;
Blk_read/s:每秒读取多少KB;
Blk_wrtn/s:每秒写多少KB;
Blk_read:一共读了多少KB;
Blk_wrtn:一共写了多少KB

* sar

sar命令查看CPU、内存和磁盘记录。默认情况下,sar命令显示当天的统计信息,不带参数显示CPU统计信息,参数-r显示收集的内存记录,-b显示磁盘I/O


查看当天CPU使用:


查看当天内存使用:


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值