【Redis】集群

  redis集群是一个提供在多个Redis节点间共享数据的程序集,支持多个master。这是由于哨兵加主从复制的方式具有缺陷,由于数据量过大的情况下,单个master的复制集难以承担,因此需要多个复制集进行集群,其作用主要是提供给在多个Redis节点间共享数据的程序集。

一、集群的功能

  • Redis集群支持多个Master,每个Master由可以挂载多个Slave。因此,它也具有读写分离、支持数据高可用和支持海量数据的读写存储操作的特点。
  • 无需使用哨兵功能,集群自带了sentinel的故障转移机制,内置高可用的支持。
  • 客户端与集群的连接只需要与集群中的任一可用节点连接即可。
  • 槽位slot负责分配到各个物理服务节点,由对应的集群来负责维护节点、插槽和数据之间的关系。

二、Redis集群的槽位slot和分片

2.1、概念

  Redis分成了16384个哈希槽,每个哈希槽都可以存放一个key-value键值对,即设置了16384个主节点的集群上限(但建议大小为1000),每个key通过CRC16校验后对16384取模来决定放置在哪个槽,
  使用Redis集群时将存储的数据分散到多台redis机器上,这就称为分片
  计算当前数据应该放在哪个槽位上的公式为:
H A S H _ S L O T = C R C 16 ( k e y ) m o d 16384 HASH\_SLOT=CRC16(key) mod 16384

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Rockict_z

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值