当你说“机器现在很忙”时,真正需要回答的是:到底谁在忙,忙在哪,忙了多久,是一阵子的抖动还是持续性的占用。ps、top、htop 这些工具,做的就是把抽象的“忙”拆成可观察的进程和指标。
它们不是互相替代的关系。ps 更适合抓静态快照,top 更适合看动态变化,htop 更适合交互式浏览。会不会组合用,决定了你排障时的起手速度。
很多排障的第一步,不是猜,而是先把“谁最可疑”从进程列表里找出来。
为什么这一篇重要
系统负载异常时,先找到高占用进程,往往比直接怀疑代码逻辑更有效率。
先把核心问题想清楚
ps适合筛选和定格进程状态。top适合动态观察 CPU、内存和进程排序变化。- 进程观察的目标不是看热闹,而是找到后续深挖的对象。
实战里更该关注什么
- 先学会看 PID、CPU、MEM、STAT、TIME 这些核心字段。
- 异常出现时优先记录进程快照,避免问题过去后无证可查。
- 把进程视角和日志、端口、线程视角结合起来看。
常见误区
- 只知道开
top,但看不懂字段含义。 - 只盯着总 CPU,不去看具体哪个进程高。
- 问题一过就没有留下任何快照证据。
一个值得自己做的小练习
在一台测试机上跑几个不同负载的进程,分别用 ps 和 top 观察它们的 CPU、内存和状态变化,比较静态视角和动态视角的差别。
小结
进程观察工具的价值,不是让你看到很多数字,而是帮助你把模糊的系统异常尽快收敛到少数几个可疑对象。