Redis系列之Redis Cluster

概述

Redis 2.8版本发布稳定版Redis Sentinel,不过Sentinel集群版存在一些问题:

  • 高可用性:Sentinel集群对Redis既有的主从集群提供有限的高可用保障;
  • 在线扩容:节点下线,触发选举,选举涉及两个阶段;新增节点,数据迁移过程麻烦。

对比Redis Sentinel

Redis Sentinel,即Redis 哨兵集群,区别如下:

  • 集群架构
    Redis Sentinel是一主多从, Redis Cluster是多主多从
  • 数据一致性
    • Redis Sentinel:由于没有分片,Sentinel对数据一致性的保障会更好一些,结构相对简单,脑裂问题会相对少一些,主从之间的数据一致性问题相对简单。主从切换后,存在数据一致性的小概率问题(例如主节点故障前的未同步数据丢失),但整体上保持一致性较好;
    • Redis Cluster:由于数据分片,Redis Cluster在发生主从切换和网络分区时,可能存在数据不一致的风险。
  • 扩展性
    • Redis Sentinel:扩展性差,受限于单机性能和存储能力。尽管可以通过添加从节点分担读请求,但所有写操作仍然只能在主节点进行;
    • Redis Cluster:扩展性好,可通过加节点来扩展存储容量和处理能力。每个节点只负责一部分数据,可实现负载均衡。
  • 适用场景
    • Redis Sentinel:适用于中小型应用,数据量和请求量相对较小的场景,或者不需要水平扩展的情况;
    • Redis Cluster:适用于大规模应用,需要处理大数据量和高并发的场景,且需要水平扩展能力。
  • 运维
    • Redis Sentinel:运维复杂度较低,适合中小规模的Redis部署。需要维护Sentinel实例,并且在节点增加或减少时,配置相对简单;
    • Redis Cluster:运维复杂度较高,适合大规模的Redis集群。节点的增删、分片的重新分配、集群状态的维护等都需要较高的运维能力。

简介

从Redis3.0开始,提供Redis Cluster集群支持,用于在多个Redis节点间共享数据,提高服务可用性。Redis Cluster采用去中心化结构,无需proxy代理,应用可以直接访问集群中的数据节点。

Redis Cluster要求至少需要3个Master才能组成一个集群,同时每个Master至少需要有一个Slave节点。各个节点之间保持TCP通信。当Master发生宕机,Redis Cluster自动会将对应的Slave节点提拔为Master,来重新对外提供服务。

Redis Cluster功能:负载均衡,故障切换,主从复制。

Redis Cluster集群,内置数据自动分片机制,集群内部将所有的key映射到16384个Slot中,集群中的每个Redis Instance负责其中的一部分的Slot的读写。集群客户端连接集群中任一Redis Instance即可发送命令,当Redis Instance收到自己不负责的Slot的请求时,会将负责请求Key所在Slot的Redis Instance地址返回给客户端,客户端收到后自动将原请求重新发往这个地址,对外部透明。一个Key到底属于哪个Slot由crc16(key) % 16384决定。

通信

集群机器等数据信息通常有两种方式:

  • 集中式:把集群信息保存在配置中心。好处:元数据的更新和读取,时效性非常好,一旦元数据出现变更,立即就更新到集中式的存储中,其他节点读取时立即就可以感知到。缺点:所有的元数据的跟新压力全部集中在一个地方,可能会导致元数据的存储有压力
  • Gossip:好处:元数据的更新比较分散,不是集中在一个地方,更新请求会陆陆续续,打到所有节点上去更新,降低压力。缺点,元数据更新有延时,可能导致部分操作有滞后。

通信的端口就是本身Redis监听端口+10000。假如监听端口6379,通信端口就是16379。

Gossip

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

johnny233

晚饭能不能加鸡腿就靠你了

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值