比如说,我们有两个位于两个位置的Hazelcast集群,即伦敦和东京,我们在主动-主动模式下配置WAN复制以在它们之间复制分布式地图。
如果其中一个集群,比如伦敦,完全关闭。恢复服务后,我们发现 Hazelcast 不会重新填充从东京到伦敦的数据,也不会让伦敦留下一张空地图。
我的问题是,如果我们想在恢复后将数据重新填充到被关闭的站点,我们该怎么办?
ps 1:您通常希望分布式缓存的行为是这样的吗?
ps 2:在这种类似的情况下,您通常如何"恢复"?
谢谢!!
您必须在启动时预配数据。这通常使用数据库或自定义操作来发送/检索数据来完成。Hazelcast 不提供通用实现,因为需求过于多样化,无法在简单的实现中处理所有需求,甚至 WAN 复制需求也非常不同,默认实现有时不适合。
在 Hazelcast 3.6 中,现在有一个名为 HotRestart 的新功能,它将数据集的持久快照保存在(希望是非旋转的)磁盘上,并且可以在集群故障/重新启动后几乎立即重新加载它。