目录
集群
由多个Redis节点组成,提供更高的性能、可用性和可扩展性。
采用hash槽分片的方式,将数据分布到不同的节点上,每个节点负责存储一部分数据,并通过集群中的元数据来管理这些数据的一致性。
哨兵模式
Redis哨兵模式是指在Redis集群中,部署一组专门的哨兵进程(Sentinel processes),这些哨兵进程负责监控主节点(master)和从节点(slave)的状态,并在发现故障时自动进行故障转移(failover),以保证Redis集群的高可用性。
工作原理:
- 监控与检测:通过配置文件或命令行参数配置。哨兵节点周期性的向主节点发送ping命令检测状态,若主节点无响应,则将其标记为主观下线。
- 故障判断与转移:当足够数量的哨兵节点都将主节点标记为主观下线时,哨兵节点会对主节点进行故障判断,并选举出一个领头哨兵,从从节点中选择一个作为新的主节点,并让所有其他从节点指向新的主节点。
- 恢复与重新配置:如果原来的主节点恢复正常,哨兵节点会将其标记为主观上线,但不会自动将其恢复为主节点角色。原来的主节点会成为新主节点的一个从节点,并尝试从新的主节点同步数据。