Java hazelcast服务器崩溃时IMap发生了什么

Java hazelcast服务器崩溃时IMap发生了什么,java,spring,caching,hazelcast,hazelcast-imap,Java,Spring,Caching,Hazelcast,Hazelcast Imap,嵌入式模式下的hazelcast有两个节点(N1和N2)。另外还有一个IMap用户,具有1个同步备份,其他设置为默认设置。在N1中,我想获取数据(用户。get),这些数据在N2中,但不幸的是,当我这样做时,N2下降了。或者N2崩溃的时间比我从N1打电话的时间早1-2秒 方法users.get的结果是什么 在这种情况下N2会被排除在集群之外吗 如果氮气在30秒内恢复正常会发生什么 你能解释一下这个算法吗 方法users.get的结果是什么 您应该得到匹配的值。数据不应丢失 在这种情况下N2会被排除

嵌入式模式下的hazelcast有两个节点(N1和N2)。另外还有一个IMap用户,具有1个同步备份,其他设置为默认设置。在N1中,我想获取数据(用户。get),这些数据在N2中,但不幸的是,当我这样做时,N2下降了。或者N2崩溃的时间比我从N1打电话的时间早1-2秒

  • 方法users.get的结果是什么
  • 在这种情况下N2会被排除在集群之外吗
  • 如果氮气在30秒内恢复正常会发生什么
  • 你能解释一下这个算法吗
  • 方法users.get的结果是什么

    您应该得到匹配的值。数据不应丢失

    在这种情况下N2会被排除在集群之外吗

    即使N2由于崩溃或其他原因丢失,您也可以访问所有数据。在这种情况下,N2将不在群集中

    如果氮气在30秒内恢复正常会发生什么

    N1将检测N2,它们将形成一个簇

    你能解释一下这个算法吗


    您可以阅读和的机制。

    谢谢您的回答。但我不明白数据从哪里来?让我们想象一下,一个用户向N1发出从N2获取数据的请求,此时N2在几秒钟内不工作,并将在3秒钟后再次开始工作,在这种情况下,用户从何处获取数据?它是在不重新分区的情况下请求N1上的备份副本,还是首先hazelcast会理解N2在尝试从N2获取数据时不起作用,并且会让用户等待重新分区集群并将数据从备份移动到基本内存,然后从中返回数据?它会等待重新分区,但不一定迁移。只读操作可以在迁移期间返回响应。