【疑难问题】Java疑难CPU高定位
2021-02-20 18:19
标签:color info 详细信息 microsoft 任务队列 window 进程 本机 round 建议使用root账号执行命令,使用其他账号登录可能会无法看到部分进程信息。 命令格式: ps –ef | grep XXXX 命令格式: top 执行结果如下,结果会动态刷新
%CPU取值说明:以347949为例,58.7%并不是类似Windows的整体CPU占用率。CPU通常是多核,命令执行机器是8核CPU,则CPU全部可用率为8*100%=800%;所以:相对Windows整个机器来说:CPU占用率是 58.7% / 800% = 7.35% 二. 进程信息 命令格式: top -p 267396 -H 说明: 1)267396为进程PID信息,参考章节1.2获取; 2)执行结果会动态刷新 3)执行结果默认只显示下半部分信息,可以按下主键盘区域数字1,增加显示上部信息。 4)左侧PID对应内部线程ID(十进制表示) 通常部署环境没有JDK命令(即没有jstack,jmap等后续命令),需要找到匹配JDK并安装到环境中。 确认方法:可以先通过root切换到根目录查找jstack 命令格式:#find / -name jstack 如果找不到则需要参考章节“如何获取环境匹配的JDK”进行安装。 命令格式: jstack 267396 > /tmp/stack1.txt 说明: 通常机器不会安装jstack信息,需使用到root账号优先查找本机jstack是否存在,否则需要自行安装。 其中nid字段对应16进制的线程ID(对应章节1.4中10进制线程信息)。 比如如下的垃圾回收线程 注意: jstack中nid线程ID是十六进制;top命令结果中线程ID是十进制,查询前需要提前转换。 【疑难问题】Java疑难CPU高定位 标签:color info 详细信息 microsoft 任务队列 window 进程 本机 round 原文地址:https://www.cnblogs.com/clarino/p/12681276.html1 CPU高分析
1.1 说明(root执行)
1.2 查看服务进程ID(ps)
1.3 查看机器CPU占用情况(top)
1.4 查看指定服务内部线程CPU占用情况(top)
1.5 安装JDK
1.6 使用jstack命令保存堆栈信息(jstack)
1.7 根据待分析TOP线程ID到jstack查找获取线程详细信息
文章标题:【疑难问题】Java疑难CPU高定位
文章链接:http://soscw.com/index.php/essay/58092.html