
大家好,我是刘叨叨,一个致力于让碎片化技术系统性的运维人。
监控大盘一片“绿色”,业务却喊“卡爆了”?别慌,今天分享一套直击要害的排查心法,让你快速把模糊的“系统慢”变成清晰的定位结论。
遇到性能问题,别乱试。记住这个黄金三步法:
命令 | 关键参数/操作 | 核心看什么 |
|---|---|---|
top | 运行后按1(看各核),P(按CPU排序),M(按内存排序) | %Cpu(s)行:•us高:应用自己算得多。•wa高:CPU在等I/O,该去查磁盘。 |
pidstat -u 1 | -u:看CPU。1:每秒采样1次。 | %CPU列:精准找到高CPU消耗的进程ID(PID)。 |
vmstat 1 | 1:每秒输出一行。 | r列:等待运行的进程数。持续大于CPU核数,说明CPU不够用了。 |
Linux爱用空闲内存做缓存(Cached),所以看内存要“聪明点”。
命令 | 关键参数 | 核心看什么 |
|---|---|---|
free -h | -h:用G/M显示,好读。 | available列:系统真正可用的内存。只关心这个数。 |
pidstat -r 1 | -r:看内存。 | RSS列:进程实际占用的物理内存,找“内存大户”。 |
📌 重要经验:看到free内存少别慌,看available。只有它快没了,且开始用Swap(交换分区)时,才是真危机,性能会暴跌。
命令 | 关键参数/操作 | 核心看什么 |
|---|---|---|
iostat -x 1 | -x:看详细指标。1:每秒刷新。 | •%util:磁盘使用率。>80%就很忙。•await:I/O平均响应时间(ms),越大越“卡”。 |
iotop | 运行后按o:只显示活跃I/O进程。 | DISK READ/WRITE列:实时看到哪个进程在读/写磁盘。 |
命令 | 关键参数 | 核心看什么 |
|---|---|---|
ss -antp | -a:所有。-t:TCP。-p:显示进程。 | 连接状态:检查ESTAB(正常连接)和TIME-WAIT(等待关闭)是否过多。 |
sar -n DEV 1 | -n DEV:看网卡。1:每秒采样。 | rxkB/s,txkB/s:进出口流量,判断带宽是否打满。 |
很多命令默认没有,先装好:
# 安装性能工具包(含iostat, pidstat, sar等)
yum install -y sysstat
# 安装进程级IO监控工具
yum install -y iotop复杂的逻辑,一张图就够了。按这个顺序来,思路永不乱:
心法精髓:top是总览仪表盘,告诉你哪里亮红灯;pidstat/iotop是精准探测器,深入问题区域抓出具体进程。
记住,命令只是工具,核心是解读指标和关联线索的能力。当你能把%wa高、await飙升、iotop里的疯狂进程这几条信息,瞬间组合成 “数据库备份任务导致磁盘IO瓶颈” 的结论时,你就真正掌握了性能排查的钥匙。
关注【刘叨叨趣味运维】公众号,用有趣的方式,啃下最硬核的技术。咱们下期见!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 [email protected] 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 [email protected] 删除。