【Linux】CPU 100% 怎么排查?——top、pidstat、jstack 到线程定位实战线上机器 CPU 突然打满时,最忌讳的动作是直接重启。重启当然可能让告警消失,但现场也一起没了:到底是某个业务循环、GC 线程、锁竞争、日志风暴,还是宿主机 steal 时间异常,事后只能靠猜。更稳的处理方式是先把故障缩小到“哪台机器、哪个进程、哪个线程、哪段代码”,再决定限流、摘实例、回滚或修代码。本文用一个 Java 小程序复现“单个线程持续消耗 CPU”的现场,把 top、pidstat、jstack、jcmd 和 /proc 背后的含义串起来。