Algunos parámetros de jvm

Qué contenido debe configurarse para la producción de jvm
1. Tamaño de la memoria del montón
2. Registro de GC
3. Volcar el montón cuando se produce oom
4. Qué recolector de basura se usa
5. Estrategia de reciclaje El
siguiente es un ejemplo de configuración común, y se usan diferentes recolecciones de basura según a los requisitos de la aplicación y la estrategia de reciclaje.

-Xms2g -Xmx2g 堆内存初始大小和最大值设置成一样,防止扩容
-Xloggc:./gc-%t.log
-XX:+PrintGCDetails 输出gc详细信息
-XX:+PrintTenuringDistribution 打印对象年龄分布
-XX:+PrintGCDateStamps 输出GC的时间戳
-XX:+HeapDumpOnOutOfMemoryError oom的时候dump heap文件
-XX:HeapDumpPath=heapdump.hprof dump的heap文件位置
-XX:ErrorFile=hs_err_pid_%p.log
-XX:MaxMetaspaceSize=200m metaspace最大空间
# -XX:+UseGCLogFileRotation :打开gc日志循环
# -XX:NumberOfGCLogFiles=20 设置gc日志文件数量
# -XX:GCLogFileSize=500m gc日志最大大小
-XX:NewSize=300m 设置年轻代初始大小
-XX:MaxNewSize=500m 年轻代最大大小
-XX:+UseConcMarkSweepGC 并发标记清除(CMS)收集器。
-XX:CMSMaxAbortablePrecleanTime=5000 设置cms preclean这一步的超时时间为5000ms,
-XX:CMSClassUnloadingEnabled cms垃圾回收对永久带的class unloading也生效
-XX:CMSInitiatingOccupancyFraction=80 占比达到80%的时候触发垃圾回收机制
-XX:+UseCMSInitiatingOccupancyOnly 关闭动态检查机制,如果不关闭,cms默认会根据历史记录预测老年代需要多久回收一次内存,cms根据自己的预测执行
AlwaysPreTouch 提前分配内存,大内存应用时很有用。

Supongo que te gusta

Origin blog.csdn.net/a807719447/article/details/114938162
Recomendado
Clasificación