在Debian系统解决HBase内存溢出问题,可从以下方面入手:
hbase-env.sh
,合理设置堆内存大小(如-Xms8g -Xmx8g
),避免过小导致频繁GC或过大引发Full GC。
hbase.hregion.memstore.flush.size
(默认128MB)和hbase.hregion.memstore.block.multiplier
(默认4),控制MemStore刷写阈值。hbase.hregion.memstore.mslab.enabled=true
。hbase.regionserver.blockcache.size=0.5
),避免占用过多内存。hbase.client.write.buffer
设为5-10MB),减少单次请求内存占用。hbase.hregion.memstore.block.multiplier
控制Region分片。-XX:+HeapDumpOnOutOfMemoryError
生成),排查内存泄漏。vm.swappiness
)合理,避免过度使用交换空间。参考来源: