线上CPU占满问题解决思路

本文详细介绍了如何在线上环境中通过top命令来排查CPU和内存占用问题。首先,使用top命令查看高CPU占用的进程,接着通过-Hp参数进一步定位到消耗资源的线程。然后,通过printf和jstack命令将PID转换并分析。最后,深入探讨了top命令的进阶使用,包括更新速度、显示模式和过滤选项等,帮助系统管理员更有效地诊断和解决性能瓶颈。
摘要由CSDN通过智能技术生成

CPU或内存占满,线上排查,定位代码

1.top命令-查看CPU占比较大的进程

2.top -Hp 【线程号】----查看占比较大的线程

3.printf %x 【pid】---对应的四个线程号十进制转换为 十六进制

4.jstack 【进程号】| grep 【十六进制的pid】-A【展示的行数】

5.top命令进阶

top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

参数说明:
d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
S : 累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来
s : 安全模式,将交谈式指令取消, 避免潜在的危机
i : 不显示任何闲置 (idle) 或无用 (zombie) 的行程
n : 更新的次数,完成后将会退出 top
b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大小先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值