一次JVM参数设置解析

  • Post author:
  • Post category:其他


-Xms4096m

最小堆内存

-Xmx4096m

最大堆内存

最小堆内存和最大堆内存(根据实际情况调整)

-XX:NewRatio=1

新生代和老年代的比值 ,这里新生代和老年代大小4096/2=2048

-XX:SurvivorRatio=8

新生代Eden和一个Suivior的比值,默认8,Suivior区有2个,Eden大小2048*0.8

XX:MetaspaceSize=512m

元空间大小,不设置,默认系统能申请到的内存大小,为了可控,最好设置,这里有512M

-XX:MaxMetaspaceSize=512m

最大元空间大小

XX:MaxDirectMemorySize

堆外内存大小

-XX:+UseConcMarkSweepGC

设置年老代为并发收集。测试中配置这个以后

XX:+PrintGC

打印GC日志信息

-XX:+PrintGCDetails

打印GC详情

-XX:+PrintGCDateStamps

输出GC的时间戳

-Xloggc:/home/admin/logs/vehicle-admin/gc.log

GC日志输入地址

-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=1 -XX:GCLogFileSize=100m

设置GC日志大小,个数

-XX:+HeapDumpOnOutOfMemoryError

当JVM出现OutOfMemory时,生成Dump文件,记录堆信息

-XX:HeapDumpPath=/home/admin/logs/vehicle-admin/heapDump.bin

dump文件地址

-XX:-UseAdaptiveSizePolicy

自适应

-XX:-OmitStackTraceInFastThrow

抛出详细堆栈信息(实际情况,高并发存在性能影响,用完最好去掉)

-Xms4096m -Xmx4096m -XX:NewRatio=1 -XX:SurvivorRatio=8 -XX:MetaspaceSize=512m

-XX:MaxMetaspaceSize=512m -XX:MaxDirectMemorySize=512m  -XX:+UseConcMarkSweepGC

-XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/home/admin/logs/vehicle-admin/gc.log

-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=1 -XX:GCLogFileSize=100m

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/admin/logs/vehicle-admin/heapDump.bin

-XX:-UseAdaptiveSizePolicy -XX:+PrintGCDetails



版权声明:本文为xionglangs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。