美文网首页
JVM-内存-内存溢出

JVM-内存-内存溢出

作者: 6a91e15c5cde | 来源:发表于2019-01-01 15:00 被阅读12次

    jvm内存结构

    jvm内存01.png
    • 堆区
      jvm内存区域

      • young区
        • s0+s1
          s0和s1在同一时间点,只有一个在使用
          s0和s1是相等的
        • eden
      • old区
    • 非堆区
      jvm在本地的内存

      • codeCache 存放比如JIT信息
    • 查看JIT信息


      jit01.png

    内存溢出的例子

    这个例子,简单模拟了堆内存溢出和非堆内存溢出


    jvm-内存溢出01.png

    如何查看上图的内存溢出问题?

    1. 导出内存映像
      自动导出
      -XX:+HeapDumpOnOutOfMemoryError
      -XX:HeapDumpPatch='./'

      使用jmap命令导出
      jmap -dump:format=b,file=heap.hprof $pid

    2. 使用mat分析映像文件
      占用内存的纬度
      对象多少的纬度


      jvm内存溢出02.png
    jvm-内存溢出03.png

    相关文章

      网友评论

          本文标题:JVM-内存-内存溢出

          本文链接:https://www.haomeiwen.com/subject/hwynlqtx.html