Jprofiler/ VisualVM 定位内存溢出OOM

下载,接受协议下一步下一步,最后选择与IDEA集成OK

ej-technologies - Java APM, Java Profiler, Java Installer Builder

Jprofiler/ VisualVM 定位内存溢出OOM_第1张图片 IDEA配置参数: 

# F:\study\spring-test\dump 为dump文件保存路径

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=F:\study\spring-test\dump

package com.dj.springtest.demo;

import java.util.ArrayList;
import java.util.List;

/**
 * User: ldj
 * Date: 2023/11/7
 * Time: 23:09
 * Description: No Description
 */
public class OomDemo {

    public static void main(String[] args) {

        List list = new ArrayList<>();
        while (true) {
            list.add(new byte[1024 * 1024]);
        }
    }
}

Jprofiler/ VisualVM 定位内存溢出OOM_第2张图片

 Jprofiler/ VisualVM 定位内存溢出OOM_第3张图片

Jprofiler/ VisualVM 定位内存溢出OOM_第4张图片

 

 2.  除了Jprofiler还有一个好用的查看dump文件的软件是 VisualVM  而且IDEA还有插件Jprofiler/ VisualVM 定位内存溢出OOM_第5张图片

Jprofiler/ VisualVM 定位内存溢出OOM_第6张图片

Jprofiler/ VisualVM 定位内存溢出OOM_第7张图片

工作中我们可能还需要从服务器导出dump文件

jmap -dump:format=b,file=/xxxx/yyyyy20231108ldj.hprof 进程id

你可能感兴趣的:(运维,java,oom)