设置内存大小

参考: https://blog.csdn.net/longgeqiaojie304/article/details/93973986

-Xms 初始化堆内存大小, 默认物理内存1/64
-Xmx 最大堆内存, 默认物理内存1/4
-Xss 栈内存大小
-Xmn 年轻代大小
-XX:MetaspaceSize 元空间大小
-XX:SurvivorRatio 幸存者比例设置
-XX:NewRatio 新生代比例设置
-XX:MaxTenuringThreshold 进入年老代阈值设置

例: 模拟OOM配置

  1. -Xms20m
  2. -Xmx20m
  3. -Xmn10m
  4. -XX:+HeapDumpOnOutOfMemoryError
  5. -XX:HeapDumpPath=C:\Users\Administrator\Desktop\JVM
  6. -XX:+PrintGCDetails
  7. -XX:SurvivorRatio=8

打印GC日志

参考: https://www.cnblogs.com/qlqwjy/p/7929414.html

-XX:+PrintGC 输出GC日志
-XX:+PrintGCDetails 输出GC的详细日志
-XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)
-XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
-XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息
-Xloggc:../logs/gc.log 日志文件的输出路径