当前位置:首页>Linux>【Linux性能】搞懂常用 Linux 性能排查工具

【Linux性能】搞懂常用 Linux 性能排查工具

  • 2026-09-10 03:42:53
【Linux性能】搞懂常用 Linux 性能排查工具

在日常开发和运维中,遇到系统变慢、CPU 飙高、内存异常等问题时,快速定位瓶颈非常关键。本文整理了一组最常用且实战价值高的 Linux 性能分析工具,重点讲清:用来干什么 + 怎么用 + 看什么指标。


一、top:整体资源快速扫描

作用:查看系统整体运行状态(CPU、内存、负载、进程)

常用命令:

top

重点关注:

  • load average:系统负载(1/5/15分钟)

  • %Cpu(s):

    • us:用户态 CPU

    • sy:内核态 CPU

    • wa:IO 等待(高说明磁盘慢)

  • RES:进程实际占用内存

  • %CPU:进程 CPU 使用率

实战建议:

  • CPU 高 → 按 P 排序找高 CPU 进程

  • 内存高 → 按 M 排序找大内存进程


二、vmstat:系统级性能快照

作用:查看 CPU、内存、IO、上下文切换等整体情况

常用命令:

vmstat 120

(每 1 秒采样,共 20 次)

重点关注:

  • r:运行队列(> CPU 核数说明 CPU 紧张)

  • free:空闲内存

  • si/so:swap 读写(不为 0 就有问题)

  • bi/bo:磁盘 IO

  • wa:IO 等待时间

实战判断:

  • r 高 → CPU 瓶颈

  • wa 高 → IO 瓶颈

  • si/so 不为 0 → 内存不够


三、dstat:更直观的综合监控

作用:vmstat 的增强版,实时展示 CPU / 内存 / IO / 网络

常用命令:

dstat

推荐用法:

dstat -cdlmn

含义:

  • -c CPU

  • -d 磁盘

  • -l 负载

  • -m 内存

  • -n 网络

优点:

  • 信息更直观

  • 多维度同时展示

  • 比 vmstat 更适合人看


四、pidstat:定位“具体哪个进程有问题”

作用:查看某个进程维度的 CPU / 内存 / IO

常用命令:

查看 CPU:

pidstat 1

查看 IO:

pidstat -d 1

查看内存:

pidstat -r 1

重点场景:

  • top 看到 CPU 高 → 用 pidstat 找“谁”导致的

  • 分析 Java / Python 进程资源占用


五、iostat:磁盘 IO 分析核心工具

作用:分析磁盘性能瓶颈

常用命令:

iostat -x1

重点指标:

  • r/s, w/s:读写次数

  • rkB/s, wkB/s:吞吐量

  • await:IO 平均等待时间(关键)

  • %util:磁盘使用率(接近 100% 说明满了)

实战判断:

  • await > 10ms → 磁盘延迟高

  • %util ≈ 100% → IO 已打满


六、Arthas:Java 线上问题神器

作用:专门用于 Java 应用的诊断工具(阿里开源)

典型能力:

  • 查看方法调用耗时

  • 实时 trace 方法执行

  • 排查死锁、线程问题

  • 热点方法分析

常用命令示例:

trace com.xxx.Service methodNamewatch com.xxx.Service methodName '{params, returnObj}'

适用场景:

  • Java 服务 CPU 飙高

  • 接口慢但查不到原因

  • 想看方法内部执行情况


七、排查流程(重点)

遇到性能问题,建议按这个顺序走:

1. 先看整体

topvmstat 1

判断:

  • CPU 问题?

  • 内存问题?

  • IO 问题?


2. 再定位进程

pidstat

找到“谁”在消耗资源


3. 如果是 IO 问题

iostat -x1

确认磁盘是否瓶颈


4. 如果是 Java 应用

arthas

深入到方法级分析


总结

这套工具组合可以覆盖 90% 的线上问题:

工具作用
top快速看整体
vmstat判断系统瓶颈类型
dstat多维度实时监控
pidstat定位具体进程
iostat分析磁盘 IO
arthasJava 深度诊断

如果你只记住一件事:

👉 先看整体(top/vmstat) → 再找进程(pidstat) → 最后深入分析(iostat/arthas)

这就是一套完整的排查思路。

一个写了10+年一线程序员。

深耕性能调优与大数据平台,也热爱折腾各种新技术。期待与你交流,一起技术进阶。

喜欢的关注我,让技术之路走得更稳、更快。

最新文章

随机文章