除了调用put操作之外,何时将持久化Hazelcast映射元素?

时间:2011-12-05 14:17:27

标签: java hazelcast

我有一个带有2个节点和持久性数据库的淡褐色群集。我一个接一个地启动两个节点。第一个节点从DB读取实体并构建相应的映射(entityMap)。启动第二个节点后,会定期(在第二个节点上)调用EntityMapStore.store()方法很多次。 我只是想知道,这应该怎么发生,因为在开始之后我没有把任何东西放到地图上。或者我做错了什么?

hazelcast.xml的相应部分如下所示:

   <map name="entityMap">
        <backup-count>1</backup-count>
        <map-store enabled="true">
            <class-name>EntityMapStore</class-name>
            <write-delay-seconds>1</write-delay-seconds>
        </map-store>
    </map>

1 个答案:

答案 0 :(得分:4)

没有。你没有做错任何事。由于您有write-delay-seconds > 0,当条目迁移到第二个节点时,将在第二个节点上为这些条目调用store()。这是当前行为,但您可能需要create an issue,以便Hazelcast团队可以通过不为迁移的无效条目调用store()来增强此行为。