linux积累--资源瓶颈分析

参考:https://blog.csdn.net/wslzwps00321/article/details/68064804

1 看负载

在top里输出load average aa bb cc ,为最近一分钟、最近5分钟、最近15分钟的进程平均等待时间, 如果这个参数值高,说明系统负载高.
负载高---->进程等待多---->有大量进程等待cpu或io–→当cup负载或者IO负载会造成系统负载高,造成系统瓶颈
一般认为超过0.70负载就比较高了(https://blog.csdn.net/yangrendong/article/details/89088580)

2 分析什么导致cup和io高,哪些进程cup消耗高

命令一:vmstat https://www.cnblogs.com/ftl1012/p/vmstat.html

  • b列高,说明等待的进程多
  • swap列频繁变化说明内存不足
  • io列变动频繁问起高说明IO可能是瓶颈 ,可在分析bi(磁盘读),bo(磁盘写)
    在这里插入图片描述
    在这里插入图片描述
    命令二:ps(ps aux | sort -k3nr | head -n 5)和top命令

top查找到使用cpu(%cpu列)最高的进程

  • top -H -p 14094 (-p监控指定进程 -H查看进程里各个线程状态) 14870
  • ps -efL

命令三:使用iostat分析io是否为瓶颈

可使用iostat分析io是否为瓶颈 ,可查看%idle列,如果该列很小,说明io很频繁,可能为io的瓶颈
在这里插入图片描述

3 总结

  • IO瓶颈:通过top查看cpu的使用率,通过vmstat查看进程的等待数(b列), 通过iostat查看io情况。如果cpu的用率低、进程的等待数多,io的idle小,就说明系统IO为瓶颈
  • 内存不足:直接查看vmstat中swap,如果si和so都很大,说明系统内存不够。
  • CPU逻辑计算能力不足:如果io、swap和memery都比较小,但是负载高,说明在密集计算下cpu的逻辑计算能力不行

4 拓展

代码级的分析,分析热点函数调用测试,每次调用花费时间
使用工具gpref

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值