HCRM博客

CentOS7 Top命令高效定位CPU高负载技巧

CentOS7 top命令按CPU排序一键定位高负载

线上机器突然卡成PPT,老板在群里疯狂艾特,你打开SSH,第一反应就是敲top?别急着回车,先确认一眼排序方式,否则 busiest 的进程可能躲在第二屏,肉眼根本扫不到。CentOS7 默认把 top 按 CPU 降序排,但很多人手滑按了大写 P 或者小写 m,顺序瞬间乱掉, busiest 的进程直接隐身。记住一条:先按 Shift+P,再按 Shift+M,最后按 1,三板斧下去,谁吃 CPU、谁吃内存、每个核跑多少,一屏全看清。

CentOS7 Top命令高效定位CPU高负载技巧-图1

为什么按 CPU 排序才是救命排序

load average 飙到 30,并不代表一定 CPU 瓶颈,IO 等待也能把数字顶上天。可只要 %CPU 这一列有进程长期占满 100%+,那基本就是真凶。把 top 切到 CPU 排序,相当于把凶手直接拽到第一排,省得你一页页翻。Shift+P 是热键,大小写敏感,别敲成小写 p,否则 top 会以为你要改 priority,界面直接跳到 renice,手忙脚乱按 q 退出,耽误的每一秒都是用户投诉。

一键操作:三键定位高负载进程

登录后复制下面这一串,一步到位:

top -bn1 | head -20

-b 批处理模式,-n1 只抓一帧,head 砍掉前 20 行, busiest 进程直接落在终端。想持续监控,就干脆:

CentOS7 Top命令高效定位CPU高负载技巧-图2

top -H -p $(pgrep -d',' java)

把 java 换成你的服务名,线程级 CPU 瞬间展开,超线程吃满也能看见。别小看 -H,很多业务把压力拆成线程,单看进程级 top 只能看到 100%,开 -H 后 16 核机器能飙到 1600%,差距一眼分明。

字段解读:数字背后藏着的真相

top 头三行最唬人:load average、Tasks、%Cpu(s)。load 高不一定 CPU 高,关键看 %id 与 %wa。id 低于 20 且 wa 个位数,说明 CPU 真吃紧;wa 高于 30,瓶颈在磁盘。再盯 %hi %si,硬中断与软中断飙高,多半是网卡被打爆。把方向搞对,后面才谈得上优化。进程区里,TIME+ 列累计占用 CPU 时间,跑一周的服务 TIME+ 上千分钟很正常,但若一分钟内 TIME+ 暴涨,说明进程刚进入死循环,立刻 kill -9 都不过分。

实战案例:一次 300% 的“假”高负载

某台 4 核虚拟机 load 飙到 12,网页却刷得动。top 一看,%id 还有 70%,%wa 0.3%,磁盘 IO 几乎空闲。继续按 Shift+P,最上头是个 Python 脚本,CPU 只占 25%,但状态列是 D,不可中断睡眠。再扫一眼 BLOCKED 列,进程卡在 nfs 挂载点,远端 NAS 掉线导致 IO 等待,load 被算进运行队列,却根本不占 CPU。umount -f 掉死挂载点,load 瞬间掉到 1.2。若当时只看数字不看状态,八成会误判成“CPU 不够”,白加一堆核,问题还在。

CentOS7 Top命令高效定位CPU高负载技巧-图3

让 top 开机就按 CPU 排序

CentOS7 的 top 配置写在 ~/.toprc,调一次顺序后按 W 大写保存,下次登录自动恢复。多人共用机器?把 /etc/toprc 模板做好,新账号 skel 目录里丢一份,省得每人重复设置。别用 alias 劫持 top,运维同事习惯各异,alias 容易踩坑;统一配置最干净。

配合其他命令交叉验证

top 是急诊大夫,确诊还得拍片。pidstat -u -t -p PID 1 5 能把指定进程每秒 CPU 拆给你看;perf top -p PID 能看到热点函数;若怀疑内存泄漏,再把 top 切到 Shift+M,RES 列暴涨就八九不离十。多工具交叉,比单盯 top 更稳。

常见坑:容器里看 top 的 CPU 100%

Docker 没限制 CPU quota 时,宿主机 32 核,容器内进程在 top 里能看到 3200%,新人直接吓懵。记住按 1 展开每个核,确认是否真占满;再结合宿主机的 /proc/stat 计算,容器视角与宿主机视角核数不同,数字别硬比较。设置 --cpus 2 后,容器内 top 最大 200%,心里就有谱。

机器一卡,先 top;顺序不对,凶手错位;Shift+P、1、W 三连, busiest 进程永远排第一,省下的时间足够你泡杯咖啡。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/41728.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~