内存问题:jmap

cpu问题:jstack

高手是怎么使用jstack精确找到异常代码的

1. 查看java中各个对象的内存使用

jvm 排查问题

jmap 命令:JVM调优命令-jmap

简单一点:jmap -h 查看使用方法

2. 查看各个线程的情况

jvm 排查问题

jstack -h 查看jstack的使用方法

3. 将top中信息与jstack对应

3.1 查看单个进程的top

     top -p [pid]

jvm 排查问题

3.2 查看单个进程中各个线程数据

top -H -p [pid]

jvm 排查问题

子线程也有自己的pid

3.3 将子线程的pid 转成16进制

printf "%x" [子pid]

jvm 排查问题

3.4 拉取jstack

jstack [pid] > t.txt

3.5 将16进制去jstack拉出来的文件中匹配

匹配的值为 nid 。这样就将top中的线程数据与jstack中的线程数据对应起来。

jvm 排查问题

相关文章:

  • 2022-02-24
  • 2021-07-12
  • 2021-09-01
  • 2021-08-17
  • 2021-05-24
  • 2021-06-27
  • 2021-08-27
  • 2022-12-23
猜你喜欢
  • 2021-08-24
  • 2021-08-08
  • 2022-12-23
  • 2021-12-23
  • 2022-12-23
  • 2022-01-27
  • 2021-10-20
相关资源
相似解决方案