我有一个问题。假设我使用的Redis集群有3个分片(主分区和从分区)。我开始知道如果主机及其从机同时出现故障,Redis Cluster将无法继续运行。之后会发生什么。
提前致谢
答案 0 :(得分:1)
<强> 1。 Redis集群是否会删除其他2个节点中的所有其他密钥? (当它回来时)
首先,只有操作被阻止而不是群集活动,并且没有对数据进行任何操作,所以documentation
Redis群集故障检测用于识别大多数节点无法再访问主节点或从节点,然后通过将从属设备提升为主节点角色来进行响应。 当无法进行从属促销时,群集将处于错误状态以停止接收来自客户端的查询。
接下来是关于数据是否被删除(在Replication文档下)
在使用Redis复制的设置中,强烈建议在主服务器中启用持久性
这意味着只有当持久性被转为off
并且主服务器对关闭时,您才会丢失数据。当该对重新启动时,您将无法恢复数据。所以保持Redis持久性开启。
<强> 2。我们是否需要手动重启此群集,我们是否可以某种方式保留其他键值(在其他节点上)?
我认为上面的答案涵盖了它。
<强> 3。如果我使用Azure Redis缓存,它将如何表现?
高可用性/ SLA :Azure Redis缓存可确保标准/高级缓存至少有99.9%的时间可用。要了解有关SLA的更多信息,请参阅Azure Redis缓存定价。 SLA仅涵盖与Cache端点的连接。 SLA不包括数据丢失保护。 我们建议使用Premium层中的Redis数据持久性功能来提高数据丢失的弹性。
所以他们有点头疼
OR
Redis群集:如果要创建大于53 GB的缓存或者想要跨多个Redis节点分片数据,可以使用Premium层中提供的Redis群集。每个节点都包含一个主/副本缓存对,以实现高可用性。有关详细信息,请参阅如何为Premium Azure Redis缓存配置群集。