Java运维实战:问题定位-CPU突增排查

java程序最常见的故障场景就是CPU徒增的情况了,本片文章为你讲解java程序CPU突增的情况怎么进行排查

1、获取CPU消耗高的线程ID

top -Hp 进程ID

然后输入大写P(shift+p),就会将这个进程下的线程按照CPU消耗进行排序展示。

举例

然后获取CPU消耗最大的线程ID

2、打线程dump

jstack 进程ID >threaddump.txt

3、将线程ID转换为16进制

printf "%x\n" 365 【第一步得到的消耗CPU高的线程ID】

得到16进制为16d

4、获取CPU消耗高的线程堆栈

然后再线程dump文件【threaddump.txt】中搜索【16d】就可以找到对应该线程的堆栈信息,从而定位到异常代码

相关推荐
Leo.yuan15 分钟前
数据资产是什么?数据资产平台如何发挥作用?
大数据·运维·数据仓库·人工智能·信息可视化
是数学系的小孩儿17 分钟前
20250531MATLAB三维绘图
开发语言·数学·matlab·电脑
沙滩小岛小木屋17 分钟前
docker中,容器时间和宿机主机时间不一致问题
运维·docker·容器
oioihoii21 分钟前
C++和C#界面开发方式的全面对比
开发语言·c++·c#
x_feng_x24 分钟前
Java从入门到精通 - 常用API(一)
java·开发语言·python
Dovis(誓平步青云)24 分钟前
C++ Vector算法精讲与底层探秘:从经典例题到性能优化全解析
开发语言·c++·经验分享·笔记·算法
jialan751 小时前
nginx
运维·nginx
Logan Lie2 小时前
Linux运维笔记:服务器感染 netools 病毒案例
linux·运维·服务器·安全
钢铁男儿2 小时前
C# 类和继承(使用基类的引用)
java·javascript·c#
czliutz2 小时前
NiceGUI 是一个基于 Python 的现代 Web 应用框架
开发语言·前端·python