JVM常用参数配置

##JVM常用参数配置## JVM主要接收两种类型的标志:布尔标志和附带参数标志。
布尔标志语法-XX:+FlagName表示开启,-XX:-FlagName表示关闭。
附带参数标志语法-XX:+FlagName=param表示开启,-XX:-FlagName=param表示关闭。
-server: 以服务器模式启动;
-Xmx2g: 最大堆内存配置;
-Xms2g: 最小堆内存配置一般最大堆内存配置和最小堆内存配置设置成一样,可以避免每次GC后重新分配内存;
**-Xmn256m:**年轻代内存大小,jvm堆内存=年轻代+老年代+持久带;
-XX:PermSize=128m:初始化持久代内存大小(JDK8将永久代移除,变成的元空间,这个参数被忽略)
-XX:MaxPermSize=128m:持久代内存最大值(JDK8将永久代移除,变成的元空间,这个参数被忽略)

-Xss256k:设置每个线程的堆栈大小
-XX:+DisableExplicitGC:忽略手动调用GC, System.gc()的调用就会变成一个空调用,完全不触发GC
-XX:+UseG1GC:使用G1垃圾回收器进行回收
-XX:+UseConcMarkSweepGC:使用并发标记清除(CMS)收集器
-XX:+CMSParallelRemarkEnabled:降低标记停顿
-XX:+UseCMSCompactAtFullCollection:在FULL GC的时候对年老代的压缩
-XX:LargePageSizeInBytes=128m:内存页的大小,适当的增加内存页的大小可以提高页表寄存器缓冲(TLB)存储的地址映射关系,OS就会减少对内存上页表的访问,能提高性能,如果太大也会导致副作用,导致JVM在计算Heap内部分区(perm, new, old)内存占用比例时,会出现超出正常值的划分,会影响Perm的大小,具体细节查看相关文章。
-XX:+UseFastAccessorMethods:原始类型的快速优化
-XX:NewRatio:年轻代(包括Eden和两个Survivor区)与年老代的比值(除去持久代),-XX:NewRatio=4表示年轻代与年老代所占比值为1:4,年轻代占整个堆栈的1/5
-XX:NewSize=N:设置新生代初始值大小;
-XX:MaxNewSize=N:设置新生代最大值大小; -Xnoclassgc:禁用类垃圾回收,性能会高一点;
-verbose:gc或**-XX:PrintGC**:开启垃圾回收基本日志的打印;
--XX:PrintGCDetails:开启垃圾回收详细日志的打印;
-Xloggc:filename:见GC日志输出到指定文件中(后面可以通过Gc日志分析工具进行分析,如GCHisto)
-xx:MaxGCPauseMillis=N:GC性能指标,用于设定应用程序可承受的最大停顿时间。这个指标的设定的值同时会影响Minor GC和 Full GC。如果设置的非常小的话会频繁的触发Full GC。优先级高于手动指定的堆内存大小,JVM会在运行的过程中自动调整大小,去满足性能指标。
-xx:GCTimeRation=N:GC性能指标,表示JVM在应用程序运行的时间和用于GC的时间的比值。例如希望GC时间占比5%,N=(1-5%)/5%;
-xx:CMSInitiatingOccupancyFraction=N:默认是70,表示CMS当老年代占用空间70%以上的时候会进行并发回收老年代,发生Major GC。此标记需要和下面的标记一起使用才能生效。如果不进行自己设定JVM会使用更复杂的算法进行自己预算处理。如果需要老年代提前进行并发处理,可以自定义合适的值,以更高的频率运行后台回收线程。这样能防止因为回收频率低导致新生代晋升的时候,老年代担保空间不足导致引发Full GC。Full GC会暂停所有线程,避免引发GC引起的长时间的停顿。
-xx:UseCMSInitiatingOccupancyOnly : 默认为假,开启后CMSInitiatingOccupancyFraction就生效了。 -XX:+CMSScavReengeBeforeRemark:默认不开启,开启后会在CMC GC之前会尝试执行一次YGC。

转载于:https://my.oschina.net/hongliangsun/blog/1546372

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值