# 性能优化
# JVM调优
# CMS垃圾收集器参数介绍
# 优化目标
- 平均Monitor GC 时间尽可能的短,因为Monitor GC使用 ParNew GC,是并行垃圾处理器,需要STW,
- CMS GC 越少越好 时间越短越好。 频繁CMS产生内存碎片,严重时引起Full GC
# Hbase内存分析
Hbase是长寿对象居多的工程
- RPC请求对象,短寿对象,随请求销毁而忘
- Memstore 对象, 长寿对象 写入MS之后就一直存在,直到flush到hdfs,通常需要一个小时到几个小时。 一般都很大,有 2M左右
- BlockCache对象,和MS一样,长寿对象,默认64KB
# 调优场景
# 1.NewParSize调优
Xmn过小导致CMS GC性能较差,过大会导致Monitor GC性能较差。 建议
总内存 | Xmn |
---|---|
>=64G | 1-3g |
<32G | 512m-1g |
# 缓存模式采用BucketCache策略 Offheap模式
# 大内存采用如下配置
-Xmx64g -Xms64g -Xmn2g -Xss256k -XX:MaxPermSize=256m -XX:SurvivorRatio=2 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
-XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:+UseCMSCompactAtFullCollection -XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC