Java教程

jvm g1gc回收器

本文主要是介绍jvm g1gc回收器,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

G1垃圾回收器
java大内存进程使用G1更有优越性,没有survivor的浪费和fgc易导致cpu飙高,G1的大部分参数不需要设置,jvm会自动动态优化。


-XX:+UseG1GC -Xss10m -XX:MaxGCPauseMillis=800 -XX:ParallelGCThreads=15 -XX:ConcGCThreads=4
使用G1时不要配置-Xmn和-XX:NewRatio。(参照http://www.oracle.com/technetwork/articles/java/g1gc-1984535.html)

Young Generation Size: Avoid explicitly setting young generation size with the -Xmn option or any or other related option such as -XX:NewRatio. Fixing the size of the young generation overrides the target pause-time goal.

-Xss10m线程最大栈设置,如果出现过stackoverflow,需要调大此参数,我们es的线程数不多可以适当调大(pstree -p [pid] | wc -l);堆大小不变该参数调大则能创建的线程数将减少。
-XX:MaxGCPauseMillis默认200,后台任务不追求最快响应时间,追求最大吞吐量需适当调大
-XX:ParallelGCThreads设为cpu的逻辑核数,如果逻辑核数超过8则设为5/8,我们机器是24个逻辑核,所以设为15
-XX:ConcGCThreads设为-XX:ParallelGCThreads的1/4

这篇关于jvm g1gc回收器的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!