hazelcast maploader监听器

时间:2016-08-19 16:58:23

标签: cluster-computing hazelcast hazelcast-imap

我有一个成员,它有一个读/写数据库的MapStore / Loader,还有一个添加了EntryAddedListener监听器的客户端。

如果成员被退回,我会看到条目添加的侦听器被触发,因为MapLoader从数据库重新加载数据。

然而,这表明客户已经添加了新条目,而事实上,它们只是被添加了#34;因为节点自举。

基本上我不希望这些侦听器因MapLoader引导地图而被解雇 - 它们只能在之后被解雇。

如何阻止这些MapLoader事件触发EntryAdded侦听器?

2 个答案:

答案 0 :(得分:2)

没有办法做到这一点。 使用MapLoader加载条目基本上是在地图中添加条目。

您可以做的是在加载地图后添加这些侦听器。 如果您的loadingMode设置为EAGER,则可以很容易地确定加载完成的时间。

为了等到加载完成,您可以调用map.size()操作。完成后,地图就会完全填充。

答案 1 :(得分:-1)

可以区分从Hazelcast v3.11开始的ADD和LOAD事件。此功能是hazelcast-13181问题的一部分。

另外,您可能想查看Java文档中的EntryAddedListenerEntryLoadedListener以获得更多详细信息。