Hazelcast 故障转移和备份

sun*_*nny 5 failover hazelcast

Hazelcast 文档指出

如果一个成员宕机,它的备份副本也包含相同的数据,将动态地重新分配数据,包括所有权并锁定它们到剩余的活动节点。因此,不会丢失任何数据。

几个问题

a) 如果为集群中的一个成员配置了 1 的备份,那么这是否意味着集群中只有 1 个成员拥有该成员的备份?或者是否有备份的备份?

b) 所以给定 a) 如果成员及其备份都出现故障,那么数据会丢失吗?

c) 如果存在直写策略并且成员及其备份都出现故障并且有数据丢失,那么是否存在动态恢复数据的机制(使用直写机制或其他机制)?

提前致谢

pve*_*jer 4

几个答案:

a) 备份是在数据结构级别上配置的。所以你可以说:这张地图有 1 个同步备份...而那张地图有 0 个..或 2 个或...

备份可以是同步的(意味着对备份的更改进行直写),也可以是后写(因此在某个时间点备份完成)。异步和同步备份在数据结构级别上独立配置。

b) 是的。这就是为什么如果您有如此高的可用性要求,您可以配置多个备份。

c) 一些数据结构(例如map/queue)可以配置maploader/mapstore策略;这使得可以将您的更改写入磁盘/数据库等。