HBASE修炼之路——00006(HBase 垃圾回收机制优化之Concurrent Mode Failure)

1、根据GC日志及HBASE日志分析如下:绝大部分情况下,regionsever宕机发生时,JVM都会触发concurrent mode failure。

出现此现象的原因主要有三个:

第一:CMS触发太晚了,CMS GC触发时,年老代所剩下的空间不足以满足新对象对空间分配请求

1、降低触发CMS的阀值,前期已新增参数(-XX:CMSInitiatingOccupancyFraction=70),但是该参数只在首次CMS GC时生效,后续CMS GC的触发依赖其自身的算法。dataproc批处理期间,内存中的垃圾增加太快,增加参数(XX:+UseCMSInitiatingOccupancyOnly),在年老代占用70%的情况下,就开始CMS GC。

-XX:+UseCMSInitiatingOccupancyOnly

第二:年老代碎片太多,当还没有达到默认进行CMS GC的情况下,却满足不了从新生代转进来的“大对象”。
1、配置参数每次进行CMS GC 时都进行碎片整理(当前参数为 1,建议改为 0)

-XX:CMSFullGCsBeforeCompaction=0

第三:垃圾产生速度超过清理速度,Survivor空间过小,导致溢出

1、配置下列参数,增大survivor space
-XX:SurvivorRatio=3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值