分布式缓存Redis实例存储着大量业务关键数据,在数据库前端缓存、数据存储引擎等各类场景下,数据的可靠性与服务的连续可用性是客户考虑的重要因素。根据对数据与服务的不同可靠性要求,您可以选择将缓存实例部署在单可用区内(单机房),或者跨可用区(同城灾备)。
单资源池单可用区高可用
单可用区灾备策略主要包括进程/服务高可用与数据持久化到磁盘两个方面进行。在单个可用区内,单机或集群单机实例通过进程守护的方式来确保服务的高可用性。当分布式缓存系统监测到Redis实例的进程出现故障时,它会立即启动一个新的进程,以继续提供服务
- 标准版主备配置包括数据持久化功能,该功能不仅将数据持久化到主节点的磁盘上,还会进行增量同步到备节点,并且备节点也会独立地持久化一份数据。主节点负责处理日常的服务请求,但如果主节点发生故障并满足切换条件,检测进程会进行主备自动切换,即将备节点提升为新的主节点,以实现故障转移并保证高可用性,确保业务的平稳运行。对于原本故障的主节点,在其恢复后,其状态将被更新为备节点。
- 集群主备实例与标准主备实例类似,其中每个分片节点都拥有持久化文件,并且集群中的每个分片都有自己的主节点和备节点。每个分片独立进行主节点状态检测,如果某个分片的主节点发生故障且满足切换条件,检测进程将把备节点提升为新的主节点,即进行主备切换操作。原本故障的主节点在恢复后,其状态将被更新为备节点。
单资源池跨可用区灾备(同城容灾)
主备与集群主备缓存实例支持将主备副本部署在不同的可用区内(即不同的物理机房)。不同可用区之间的电力、网络均相互隔离,具备故障隔离性,当主节点所在的机房因为电力或者网络出现故障,备节点将接管服务,客户端与备节点正常建立连接以及读写数据。
上图为主备实例跨可用区部署示意,集群主备实例与主备实例类似,每一个分片节点都跨可用区部署。在订购Redis实例时,您可以选择不同的可用区进行部署。