jvm异常排查

简介: jvm异常排查

一、查看某个进程占用CPU过高问题

查看当前系统CPU占用情况

top

PID为29706占用过高

查看占用过高进程中线程使用情况(可以得到每个线程占用资源情况)

top -Hp 29706

将JVM信息导出到pid.txt文件汇总

jstack 29709 > pid.txt

将进程PID转为16进制

printf '%x' 29709

在打开的文件中寻找占用CPU过高进程信息

vim pid.txt
/1677

二、dump文件分析(查看内存class占用)

1、jmap:生成dump文件

  • test05.txt:生成的文件
  • 115025:PID
jmap -dump:live,format=b,file=test05.txt 115025

2、mat分析dump文件

网址:

https://www.eclipse.org/mat/downloads.php

文件地址:

CSDN(Mac+Windows)

https://download.csdn.net/download/weixin_44624117/20827238

使用:

3、JDK自带Java VisualVM分析

打开/bin,目录下jvisualvm.exe文件进行日志分析。

目录
相关文章
|
8月前
|
监控 安全 Java
JVM内存问题之排查Direct Memory泄漏有哪些常用方法
JVM内存问题之排查Direct Memory泄漏有哪些常用方法
248 2
|
8月前
|
Arthas 存储 监控
JVM内存问题之JNI内存泄漏没有关联的异常类型吗
JVM内存问题之JNI内存泄漏没有关联的异常类型吗
|
8月前
|
监控 Java Linux
JVM内存问题之如果堆内存一直缓慢上涨,如何解决
JVM内存问题之如果堆内存一直缓慢上涨,如何解决
890 1
|
8月前
|
缓存 算法 Java
JVM内存溢出(OutOfMemory)异常排查与解决方法
JVM内存溢出(OutOfMemory)异常排查与解决方法
|
10月前
|
Java Linux Arthas
linux上如何排查JVM内存过高?
linux上如何排查JVM内存过高?
1147 0
|
10月前
|
存储 缓存 算法
深入浅出JVM(二)之运行时数据区和内存溢出异常
深入浅出JVM(二)之运行时数据区和内存溢出异常
|
10月前
|
存储 监控 Java
三万字长文:JVM内存问题排查Cookbook
本文主要系统性地整理了排查思路,为大家遇到问题时提供全面的排查流程,不至于漏掉某些可能性误入歧途浪费时间。
|
10月前
|
监控 算法 Java
JVM问题排查宝典
本文介绍了JVM问题排查与学习的经验,包括使用VisualVM监控本地JVM、通过GCViewer和gceasy分析GC日志、使用MAT分析OOM以及查询官方JVM参数。还提到了一个第三方网站HeapDump,提供简化版的JVM参数分析和生成服务,以快速生成适合特定环境的JVM配置。此外,推荐了几本深入学习JVM的书籍,并提供了进一步学习JVM问题的资源。
111 1
|
10月前
|
缓存 算法 安全
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍(二)
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍
90 0
|
10月前
|
缓存 Java C#
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍(一)
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍
178 0