jvm内存结构
jvm内存01.png-
堆区
jvm内存区域- young区
- s0+s1
s0和s1在同一时间点,只有一个在使用
s0和s1是相等的 - eden
- s0+s1
- old区
- young区
-
非堆区
jvm在本地的内存- codeCache 存放比如JIT信息
-
查看JIT信息
jit01.png
内存溢出的例子
这个例子,简单模拟了堆内存溢出和非堆内存溢出
jvm-内存溢出01.png
如何查看上图的内存溢出问题?
-
导出内存映像
自动导出
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPatch='./'使用jmap命令导出
jmap -dump:format=b,file=heap.hprof $pid -
使用mat分析映像文件
占用内存的纬度
对象多少的纬度
jvm内存溢出02.png
网友评论