根据物理机总内存的百分比设置jvm堆大小
-XX:MaxRAMPercentage=75.0
初始化堆75%(物理机)
-XX:InitialRAMPercentage=75.0
如果有容器,则受限于容器的大小
-XX:MinRAMPercentage=75.0
元空间最大容量
-XX:MaxMetaspaceSize=200M
直接内存的最大值
-XX:MaxDirectMemorySize=256M
使用G1收集器
-XX:+UseG1GC
GC时的最大目标暂停时间
该参数并非硬性约束,指导目标
Parallel Scavenge(PS)收集器:做关键参数控制暂停
G1收集器:会尝试调整区域划分和GC策略去尽可能接近设定的目标暂停时间
#设置过小可能导致JVM牺牲吞吐量或其他性能指标。甚至导致频繁的垃圾回收操作
-XX:MaxGCPauseMillis=200
设置IPv4优先
在某些环境中,不完全支持IPv6或存在IPv6兼容问题,可以避免因IPv6相关问题而导致的连接失败或性能下降等问题
-Djava.net.PreferIPv4Stack=true
发生OOM之后输出dump文件
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/usr/dumplog
开启GC文件打印
-XX:+UseGCLogFileRotation
#GC文件输出路径
-Xloggc:/path/gc.log
保留日志文件数,多出来会覆盖最旧的文件,保持固定数量的日志文件
-XX:NumberOfGCLogFiles=15
单个GC日志最大为1M
-XX:GCLogFileSize=1024K