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】就可以找到对应该线程的堆栈信息,从而定位到异常代码

相关推荐
心无旁骛~9 小时前
python多进程和多线程问题
开发语言·python
星云数灵9 小时前
使用Anaconda管理Python环境:安装与验证Pandas、NumPy、Matplotlib
开发语言·python·数据分析·pandas·教程·环境配置·anaconda
kaikaile199510 小时前
基于遗传算法的车辆路径问题(VRP)解决方案MATLAB实现
开发语言·人工智能·matlab
Tao____10 小时前
开源物联网平台
java·物联网·mqtt·开源·设备对接
2***s67210 小时前
Failed to restart nginx.service Unit nginx.service not found
运维·nginx
遇到困难睡大觉哈哈10 小时前
Harmony os——ArkTS 语言笔记(四):类、对象、接口和抽象类
java·笔记·spring·harmonyos·鸿蒙
四问四不知10 小时前
Rust语言进阶(结构体)
开发语言·后端·rust
拿破轮10 小时前
使用通义灵码解决复杂正则表达式替换字符串的问题.
java·服务器·前端
j***518910 小时前
Java进阶,时间与日期,包装类,正则表达式
java·mysql·正则表达式
q***99410 小时前
index.php 和 php
开发语言·php