Linux性能优化实战学习笔记:第二十五讲
一、磁盘性能指标
1、使用率
2、饱和度
3、IOPS
4、吞吐量
5、响应时间
6、性能测试工具
二、磁盘I/O观测
1、每块磁盘的使用率(指标实际上来自/proc/diskstats)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | [root@luoahong ~] # iostat -d -x 1 Linux 5.1.0-1.el7.elrepo.x86_64 (luoahong) 05 /18/2019 _x86_64_ (2 CPU) Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 3992.17 770824.35 4.35 0.11 1.17 193.08 0.87 3.48 0.00 0.00 6.00 4.00 0.00 0.00 0.00 0.00 0.00 0.00 2.91 110.35 Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 3253.46 883780.88 2.76 0.08 1.54 271.64 0.46 1.84 0.00 0.00 1.00 4.00 0.00 0.00 0.00 0.00 0.00 0.00 3.60 105.71 Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 6212.93 1610431.47 5.17 0.08 1.78 259.21 0.86 3.45 0.00 0.00 0.00 4.00 0.00 0.00 0.00 0.00 0.00 0.00 8.43 198.19 Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 908.30 193127.80 3.25 0.36 1.98 212.62 0.36 1.44 0.00 0.00 1.00 4.00 0.00 0.00 0.00 0.00 0.00 0.00 1.39 25.45 Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 3778.63 972369.23 6.84 0.18 1.59 257.33 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 4.42 119.83 Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 1465.48 361423.81 4.76 0.32 1.73 246.63 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1.92 48.21 Device r /s rkB /s rrqm /s %rrqm r_await rareq-sz w /s wkB /s wrqm /s %wrqm w_await wareq-sz d /s dkB /s drqm /s %drqm d_await dareq-sz aqu-sz %util sda 5795.08 1191006.97 4.92 0.08 1.12 205.52 1.64 6.56 0.00 0.00 2.50 4.00 0.00 0.00 0.00 0.00 0.00 0.00 3.91 152.95 |
2、iowat指标图解
3、需要特别注意指标
三、进程I/O观测
1、pidstat 查看进程I/O情况
1 2 3 4 5 6 7 | [root@luoahong ~] # pidstat -d 1 Linux 5.1.0-1.el7.elrepo.x86_64 (luoahong) 05 /18/2019 _x86_64_ (2 CPU) 10:37:42 AM UID PID kB_rd /s kB_wr /s kB_ccwr /s iodelay Command 10:37:43 AM 0 6834 170.30 0.00 0.00 0 master 10:37:43 AM 89 6835 269.31 0.00 0.00 0 pickup 10:37:43 AM 89 6836 419.80 0.00 0.00 0 qmgr |
2、pidstat -d 1图解
3、iotop按照io大小对进程排序,然后找到I/o较大的那些进程
1 2 3 4 5 | iotop Total DISK READ : 0.00 B /s | Total DISK WRITE : 7.85 K /s Actual DISK READ: 0.00 B /s | Actual DISK WRITE: 0.00 B /s TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND 15055 be /3 root 0.00 B /s 7.85 K /s 0.00 % 0.00 % systemd-journald |
4、iotop命令详解
作者:罗阿红
出处:http://www.cnblogs.com/luoahong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构