《jvm学习笔记》常用JVM配置参数

编程

  • -XX:+printGC

  • -XX:+printGCDetails

  • -Xloggc:log/gc.log

    • 指定GC log的位置,以文件输出

    • 帮助开发人员分析

  • -XX:+PrintHeapAtGC

    • 每次GC后,都打印堆信息

  • -XX:+TraceClassLoading

    • 监控类的加载

  • -XX:+PrintClassHistogram

    • 按下ctrl+break后,打印类的信息

  • 堆的分配参数

    • -Xmx -Xms

      • 最大堆 最小堆

    • java会尽可能维持在最小堆

    • -Xmn(绝对值)

      • 设置新生代大小

    • -XX:NewRation(比例)

      • 新生代(eden+2*s)和老年代(不包含永久区)的比值

      • 设为4 表示 新生代:老年代 = 1:4 ,即年轻代占堆的1/5

    • -XX:SurivivorRatio

      • 设置两个幸存区和eden的比值

      • 设为8 表示Survivor:eden = 2:8,即一个Survivor占年轻代的1/10

    • -XX:+HeapDumpOnOutOfMemoryError

      • OOM时导出堆到文件

    • -XX:+HeapDumpPath

      • 导出OOM的路径

    • -XX:OnOutMemoryError

      • 发生OOM时,执行一个脚本

    栈的分配参数

    • -Xss

      • 通常只有几百k

      • 决定函数的调用深度

      • 每个线程都有独立的栈

      • 局部变量、参数分配在栈上

    以上是 《jvm学习笔记》常用JVM配置参数 的全部内容, 来源链接: utcz.com/z/513108.html

    回到顶部