hazelcast中的分区和序列化开销

时间:2018-06-06 12:38:11

标签: java serialization hazelcast hazelcast-imap

我有一个IMap映射,其中Abc类是一个实现序列化的嵌套类。即使没有同步和异步备份,我也会遇到内存不足异常。当我从默认值271减少分区数为3时,它似乎工作,所有条目都成功加载。 MapLoading期间产生的分区和序列化开销是多少?

1 个答案:

答案 0 :(得分:0)

不要将分区计数减少到3,而是通过降低并发性来降低系统速度。群集中的每个成员都有多个分区线程,每个分区线程拥有一定数量的分区。将其减少到如此低的数量将极大地影响性能。此外,群集中不能有超过3个成员(我认为它实际上可能是2个),具有3个群集范围的分区。

你可以避免使用OOME,因为分区对象较少,但不会持续很长时间。您需要适当调整JVM堆大小以满足所需的高速缓存使用。

在序列化开销上,Java序列化在有效载荷大小和延迟方面是最差的。使用Hazelcast序列化,这里是链接:http://docs.hazelcast.org/docs/3.10.2/manual/html-single/index.html#serialization