raft-java icon indicating copy to clipboard operation
raft-java copied to clipboard

内存溢出

Open winflex opened this issue 5 years ago • 1 comments

选区_072 选区_073

重现过程:只需一个线程持续发SetRequest,为了加剧内存上升的过程,把value设的比较大,例如1k,持续一会后jvm就崩了。 猜测:Segment里面有个entries的list,只add没有remove,相当于把报文都存到内存了

winflex avatar Apr 24 '19 06:04 winflex

@winflex 在每次snapshot结束后,会调用SegmentedLog.truncatePrefix删除多余的内存segment。 目前默认的snapshot间隔是1小时,由于你的value比较大,所以建议把snapshot间隔调小一些。 配置这个字段:RaftOptions.snapshotPeriodSeconds

wenweihu86 avatar Aug 17 '19 13:08 wenweihu86