jvm oom 问题排查

0、样例代码:


public class HeapOOM {

    public static void main(String[] args) throws InterruptedException {
        List oomObjects=new ArrayList<>();

        while (true) {
//            oomObjects.add(new OOMObject());
            Thread.sleep(10);
        }
    }
}



public class OOMObject {
}

1、设置jvm的xms和xmx的大小,已经打印堆信息大小。-Xms10m -Xmx10m -XX:+HeapDumpOnOutOfMemoryError

jvm oom 问题排查_第1张图片

2、使用 jprofile分析相关的hprof文件信息

3、相关分析信息

jvm oom 问题排查_第2张图片

4、jstack 主要用于线程排查问题的,

     jps  -l : 打印类的信息

     jps -v : 输出Java进程的PID、包名信息和完整的JVM参数

5、flink几个oom的例子

JAVA各种OOM代码样例及解决方法 - 黄青石 - 博客园

6、jvm导致cpu过高原因排查

1、cpu空转

2、一般是大集合处理或死循环导致。

你可能感兴趣的:(java,java,开发语言,后端)