关于jvm设置堆内存的相关指令

-Xms 用来设置堆空间(年轻代+老年代)的初始内存大小
   -X:是jvm运行参数
    ms:memory start
   -Xmx:用来设置堆空间(年轻代+老年代)的最大内存大小

  默认堆空间大小
      初始内存大小:物理电脑内存大小/64
      最大内存大小:物理内存大小/4
  手动设置: -Xms600m -Xmx600m
      开发中建议将初始堆内存和最大堆内存设置成相同的值。
  查看设置的参数: 方式1: jps    /     jstat -gc  进程id
                  方式2: -XX:+PrintGCDetails
执行jinfo -flag NewRatio 进程号  得到 -XX:NewRatio=2

* -XX:NewRatio: 设置新生代和老年代的比例,默认值是2
* -XX:-UseAdaptiveSizePolicy   :关闭自适应的内存分配策略 (暂时用不到)
* -XX:SurvivorRatio=8: 设置新生代中Eden区与Survivor区的比例 8:1:1
* -Xmn:设置新生代最大内存大小 (一般不设置)

* • -XX:+PrintFlagsInitial:查看所有的参数的默认初始值
* • -XX:+PrintFlagsFinal:查看所有的参数的最终值(可能会存在修改,不再是
* 初始值)
* • -Xms:初始堆空间内存(默认为物理内存的 1/64)
* • -Xmx:最大堆空间内存(默认为物理内存的 1/4)
* • -Xmn:设置新生代的大小。(初始值及最大值)
* • -XX:NewRatio:配置新生代与老年代在堆结构的占比
* • -XX:SurvivorRatio:设置新生代中 Eden 和 S0/S1 空间的比例
* • -XX:MaxTenuringThreshold:设置新生代垃圾的最大年龄
* • -XX:+PrintGCDetails:输出详细的 GC 处理日志
* – 打印 gc 简要信息:①-Xx:+PrintGC ② - verbose:gc
* • -XX:HandlePromotionFalilure:是否设置空间分配担保
经验分享 程序员 微信小程序 职场和发展