性能测试工具 性能测试过程中-磁盘 IO 高分析方法

会飞的猪 · 2018年10月25日 · 最后由 kawa 回复于 2018年11月02日 · 3563 次阅读

磁盘 IO 高分析方法
工具准备:
iotop: http://guichaz.free.fr/iotop/
pt-ioprofile:http://www.percona.com/downloads/percona-toolkit/2.2.1/
io 高分析方法:
1、查看磁盘使用率 df -lh
2、安装 iostat 安装命令:yum install sysstat
3、iostat -d -k 2 查看 IO 情况,哪个磁盘的 IO 负载较高,接下来我们就来定位具体的负载来源

%util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为 use 的单位为毫秒)
如果 %util 接近 100%,说明产生的 I/O 请求太多,I/O 系统已经满负荷,该磁盘可能存在瓶颈。

4、安装 iotop 命令:安装命令:yum install iotop iotop 查看哪个线程耗 IO 比较高、按 o 只显示有磁盘 IO 活动的进程。

5、pt-ioprofile 定位负载来源文件
pt-ioprofile --profile-pid=1236 --cell=sizes
pt-ioprofile 的原理是对某个 pid 附加一个 strace 进程进行 IO 分析。

6、 对于定位问题更有用的是通过 IO 的吞吐量来进行定位。使用参数 --cell=sizes,该参数将结果已 B/s 的方式展示出来
pt-ioprofile --profile-pid=1236 --cell=sizes
从上图可以看出 IO 负载的主要来源是 jetty。
并且压力主要集中在读取上。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 14 条回复 时间 点赞

你是挖财的?

黑山老妖 回复

不是啊

会飞的猪 回复

那我认错了😂

黑山老妖 回复

哦哦

能加个好友吗

可以哦

会飞的猪 回复

😄 请甩联系方式

仅楼主可见

跪求博客

xiaoliuzi 回复

没有开博客,有啥性能问题,可以找我讨论啊😀

会飞的猪 回复

作为一个新手,什么都不知道,是不能和大神在语言上擦出火花的,所以只能拜读大神的操作了,请问有没有从零到结束的实例操作,我想 see see,跪了

监测到数据库服务器的 io 过高,如何进行再进一步的分析?

kawa 回复

如果是 oracle 数据库,可以采用打印数据库的 awr 报告的方式 看看是否有大 SQL 或者其他问题

会飞的猪 回复

mysql 数据库,装了 MONyog 监控,但是不知道关注什么数据

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册