CPU 飙升!救火指南:Linux 管理员如何冷静排查高负载?
挂了!CPU 飙到 90%+?Linux 管理员的实战高 CPU 诊断指南(不慌)你登录服务器,打开 top,看着数字一秒一刷新……其实,当 CPU 飙高时,工具展示给你的往往只是结果,而不是原因。这篇文章给你一套不慌、不乱、能在生产环境直接用的高 CPU 排查思路。“CPU 占用高,肯定是有进程在疯狂吃 CPU。”top 看到的只是一个“综合结果”,可能隐藏着完全不同的根因:👉 top 告诉你“看起来很忙”,但没告诉你“在忙什么”。下面这套流程,适合告警现场、线上环境、时间紧张的情况。procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st
| 字段 | 含义 || -- | ------------------ || us | 用户态 CPU(程序真正算) || sy | 内核态 CPU || wa | CPU 在等 IO(磁盘 / 网络) || st | 虚拟化环境中被抢走的 CPU 时间 |
wa 很高 ≠ CPU 忙,而是 CPU 在“干等”。sar -u -f /var/log/sa/saXX
ps -eo pcpu,pid,user,args | sort -k1 -r | head
有些系统“慢”的原因,并不是计算,而是频繁切换任务。•✅ 先判断类型(us / sy / wa / st)