想要配置ZGC垃圾收集器需要怎么配置?

提问者:帅平 问题分类:微服务
想要配置ZGC垃圾收集器需要怎么配置?
ZGC
2 个回答
什么放弃治疗
什么放弃治疗
这里再给个美团的配置:
-Xms10G -Xmx10G 
-XX:ReservedCodeCacheSize=256m -XX:InitialCodeCacheSize=256m 
-XX:+UnlockExperimentalVMOptions -XX:+UseZGC 
-XX:ConcGCThreads=2 -XX:ParallelGCThreads=6 
-XX:ZCollectionInterval=120 -XX:ZAllocationSpikeTolerance=5 
-XX:+UnlockDiagnosticVMOptions -XX:-ZProactive 
-Xlog:safepoint,classhisto*=trace,age*,gc*=info:file=/opt/logs/logs/gc-%t.log:time,tid,tags:filecount=5,filesize=50m
发布于:9个月前 (08-28) IP属地:四川省
步江湖
步江湖
具体的配置信息说明如下:
-Xms -Xmx:堆的最大内存和最小内存,这里都设置为10G,程序的堆内存将保持10G不变。
-XX:ReservedCodeCacheSize -XX:InitialCodeCacheSize:设置CodeCache的大小, JIT编译的代码都放在CodeCache中,一般服务64m或128m就已经足够。我们的服务因为有一定特殊性,所以设置的较大。
-XX:+UnlockExperimentalVMOptions
-XX:+UseZGC:启用ZGC的配置。
-XX:ConcGCThreads:并发回收垃圾的线程。默认是总核数的12.5%,8核CPU默认是1。调大后GC变快,但会占用程序运行时的CPU资源,吞吐会受到影响。
-XX:ParallelGCThreads:STW阶段使用线程数,默认是总核数的60%。
-XX:ZCollectionInterval:ZGC发生的最小时间间隔,单位秒。
-XX:ZAllocationSpikeTolerance:ZGC触发自适应算法的修正系数,默认2,数值越大,越早的触发ZGC。
-XX:+UnlockDiagnosticVMOptions -XX:-ZProactive:是否启用主动回收,默认开启,这里的配置表示关闭。
-Xlog:设置GC日志中的内容、格式、位置以及每个日志的大小。
发布于:9个月前 (08-28) IP属地:四川省
原来无话可说
原来无话可说
下面给一组配置ZGC垃圾收集器的配置示例:
-XX:+UnlockExperimentalVMOptions
-XX:+UseZGC
-Xmx100M
-Xlog:gc*:/workSpace\/C/gc.log

ZGC收集器已经不再推荐之前老的日志配置方式,比如:-XX:+PrintGCDetails,-Xloggc: 等等,这些老的参数已经不再推荐使用,并且部分参数已经不在支持了,后续关于gcLog的配置统一使用一个参数即可:-Xlog:gc: ;
发布于:9个月前 (08-28) IP属地:香港
我来回答