JVM常见的调优参数都有哪些?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM常见的调优参数都有哪些?相关的知识,希望对你有一定的参考价值。

    -Xms256m:初始化堆大小为 256m;

    -Xmx2g:堆最大内存为 2g;

    -Xmn50m:新生代的大小50m;

    -XX:+PrintGCDetails  打印 gc 详细信息

    -XX:+HeapDumpOnOutOfMemoryError   在发生OutOfMemoryError错误时,来dump堆快照

    -XX:NewRatio=4       设置年轻的和老年代的内存比例为 1:4;

    -XX:SurvivorRatio=8  设置新生代 Eden 和 Survivor 比例为 8:2;

    //参数上写的,都是新生代的垃圾回收器

    -XX:+UseSerialGC     新生代和老年代都用串行收集器 Serial + Serial Old

    -XX:+UseParNewGC  指定使用 ParNew + Serial Old 垃圾回收器组合;

    -XX:+UseParallelGC   新生代使用Parallel Scavenge,老年代使用Serial Oldujiuye

    //参数上写的,都是老年代的垃圾回收器

    -XX:+UseParallelOldGC:新生代ParallelScavenge + 老年代ParallelOld组合;

    -XX:+UseConcMarkSweepGC:新生代使用ParNew,老年代的用CMS;

    -XX:NewSize;新生代最小值;

    -XX:MaxNewSize:新生代最大值

    -XX:MetaspaceSize 元空间初始化大小

    -XX:MaxMetaspaceSize 元空间最大值

参考技术A

    -Xms256m:初始化堆大小为 256m;

    -Xmx2g:堆最大内存为 2g;

    -Xmn50m:新生代的大小50m;

    -XX:+PrintGCDetails  打印 gc 详细信息

    -XX:+HeapDumpOnOutOfMemoryError   在发生OutOfMemoryError错误时,来dump堆快照

    -XX:NewRatio=4       设置年轻的和老年代的内存比例为 1:4;

    -XX:SurvivorRatio=8  设置新生代 Eden 和 Survivor 比例为 8:2;

    //参数上写的,都是新生代的垃圾回收器

    -XX:+UseSerialGC     新生代和老年代都用串行收集器 Serial + Serial Old

    -XX:+UseParNewGC  指定使用 ParNew + Serial Old 垃圾回收器组合;

    -XX:+UseParallelGC   新生代使用Parallel Scavenge,老年代使用Serial Old

    //参数上写的,都是老年代的垃圾回收器

    -XX:+UseParallelOldGC:新生代ParallelScavenge + 老年代ParallelOld组合;

    -XX:+UseConcMarkSweepGC:新生代使用ParNew,老年代的用CMS;

    -XX:NewSize;新生代最小值;

    -XX:MaxNewSize:新生代最大值

    -XX:MetaspaceSize 元空间初始化大小

    -XX:MaxMetaspaceSize 元空间最大值

参考技术B

    -Xms256m:初始化堆大小为 256m;

    -Xmx2g:堆最大内存为 2g;

    -Xmn50m:新生代的大小50m;

    -XX:+PrintGCDetails  打印 gc 详细信息

    -XX:+HeapDumpOnOutOfMemoryError   在发生OutOfMemoryError错误时,来dump堆快照

    -XX:NewRatio=4       设置年轻的和老年代的内存比例为 1:4;

    -XX:SurvivorRatio=8  设置新生代 Eden 和 Survivor 比例为 8:2;

    //参数上写的,都是新生代的垃圾回收器

    -XX:+UseSerialGC     新生代和老年代都用串行收集器 Serial + Serial Old

    -XX:+UseParNewGC  指定使用 ParNew + Serial Old 垃圾回收器组合;

    -XX:+UseParallelGC   新生代使用Parallel Scavenge,老年代使用Serial Old

    //参数上写的,都是老年代的垃圾回收器

    -XX:+UseParallelOldGC:新生代ParallelScavenge + 老年代ParallelOld组合;

    -XX:+UseConcMarkSweepGC:新生代使用ParNew,老年代的用CMS;

    -XX:NewSize;新生代最小值;

    -XX:MaxNewSize:新生代最大值

    -XX:MetaspaceSize 元空间初始化大小

    -XX:MaxMetaspaceSize 元空间最大值

参考技术C -Xms:堆初始化大小,默认占物理内存的1/64
-Xmx:堆最大,默认占物理内存的1/4
-Xmn:调整【新生代(eden+幸存者区)】大小

以上是关于JVM常见的调优参数都有哪些?的主要内容,如果未能解决你的问题,请参考以下文章

2021秋招最新JAVA面试题|JVM剖析与常用的调优总结

常用jvm参数配置

JVM优化-上篇

JVM的常用的调优策略和垃圾回收算法及Tomcat的常用调优参数

Spark学习之路 (十三)SparkCore的调优之资源调优JVM的基本架构

jvm的调优