Linux 性能瓶颈阈值分析

Linux 中的系统资源包括:CPU、IO(磁盘IO、网络IO)、内存等,本文中,定性地给出了对于不同的系统资源瓶颈的度量方法和衡量标准。

1、CPU定位分析

在系统的CPU分析定位过程中,当系统的CPU利用率大于50%时,我们就需要注意了;当系统的CPU利用率大于70%的时候,就需要密切关注;当系统的CPU的利用率高于90%的时候,情况就比较严重了。通过这些监控分析情况,我们可以用命令有vmstat、sar、dstat、mpstat、top、ps等命令来进行统计分析。

模块

类型

度量方法

衡量标准

CPU

使用情况

1、通过vmstat 统计1-id的计数

2、通过sar -u 统计1-%idle的计数

3、通过dstat命令 统计1-id1的计数

4、通过mpstat -P ALL统计1-%idle的计数

5、通过ps命令统计cpu的计数

注意>=50%
告警>=70%

严重>=90%

CPU

满载

6、vmstat的r的计数 > CPU逻辑数

7、sar -q, “runq-sz” >CPU逻辑数

8、dstat -p, “run” > CPU逻辑数

运行的队列大于1时,说明已经有一定的负载了,不过这个值也不绝对,需要进一步分析其他的资源情况来确定CPU是否已经满载符合运行

CPU

错误

9、通过perf工具去捕获处理器的错误信息,需要处理器支持

需处理器支持

2、内存定位分析

在系统的内存分析定位过程中,当系统内存的利用率大于50%的时候,我们就需要注意了;当系统的内存大于70%的时候,就需要密切关注;当系统的内存利用率高于80%的时候,情况就比较严重。通过这些监控分析,可以用vmstat、sar、dstat、free、top、ps等命令来进行统计分析。

模块

类型

度量方法

衡量标准

内存

使用情况

1、free命令查看使用情况

2、vmstat命令查看使用情况

3、sar -r 命令查看使用情况

4、ps命令查看使用情况

注意>=50%

告警>=70%

严重>=80%

内存

满载

5、vmstat的si/so比例辅助swpad和free利用

6、sar -W 查看次缺页数

7、查看内核日志有无OOM机制kill进程

8、dmesg | grep killed

1、so数值大,且swpad已经占比很高,内存肯定已经饱和

2、sar命令缺页以为不停地和swap打交道,证明内存已经饱和

内存

错误

9、查看内核有无physical failures

10、通过工具如valgrind等进行检查

有计数

3、网络定位分析

衡量系统网络的使用情况,可以使用的命令有sar、ifconfig、netstat以及查看net的dev速率,通过查看收发包的吞吐率达到网卡的最大上限(**问题:**网络的最大上限怎么看呢?),网络数据报文有因为这类原因而引发的丢包、阻塞等现象都证明当前网络可能存在瓶颈。在进行性能测试时,为了减小网络的影响,一般我们都是在局域网中进行测执行。

模块

类型

度量方法

衡量标准

网络

使用情况

1、sar -n DEV 的收发计数大于网卡上限

2、ifconfig RX/TX 带宽超过网卡上限

3、cat /proc/net/dev 的速率超过上限

4、nicstat 的util基本满负载

1、收发包的吞吐率达到网卡上限

2、有延迟

3、有丢包

4、有阻塞

网络

满载

5、ifconfig dropped 有计数

6、netstat -s “segments restransmited”有计数

7、sar -n DEV rxdrop txdrop 有计数

统计的丢包有计数证明已经满载了

网络

错误

8、ifconfig, ‘errors’

9、netstat -I, “RX-ERR”/”TX-ERR”

10、sar -n EDEV, “rxerr/s”,”txerr/s”

11、ip -s link, “errors”

错误有计数

4、IO定位分析

衡量系统IO的使用情况,可以使用sar、iostat、iotop等命令进行系统级别的IO监控分析。当发现IO的利用率大于40%时候,就需要注意了;当使用率大于60%则处于告警阶段;大于80%时IO就会出现阻塞了。

模块

类型

度量方法

度量标准

IO

使用情况

1、iostat -xz, “%util”

2、sar -d, “%util”

3、iotop 的利用率很高

4、cat /proc/pid/sched|grep iowait

注意>=40%

告警>=60%

严重>=80%

IO

满载

5、iostat -xnz 1, “avgqu-sz”>1

6、iostat await>70

IO已经有满载嫌疑

IO

错误

7、dmesg 查看io错误

8、smartctl /dev/sda

有信息

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值