redis集群之哈希槽

redis集群数据结构

在这里插入图片描述clusterNode结构保存了一个节点的状态,比如节点的创建时间,名称。负责处理哪些槽(槽是redis集群的一个最重要的一个概念,后边会讲到)

在这里插入图片描述
clusterLink结构保存了连接节点所需要的信息,比如套接字描述符,输入缓存区和输出缓冲区,主要是用于连接其他节点。
在这里插入图片描述
每个节点都保存着一个clusterState结构。这个结构记录了在当前结点的视角下,集群的状态,集群所包含的节点等信息

槽指派

redis 集群通过分片的方式保存数据库中的键值对:集群的整个数据库被分为16384个槽(slot),数据库中每个键都属于这16384个槽的其中一个,集群中的每个节点负责0个或者最多16384个槽。

怎么计算键key属于哪个槽?

节点使用以下方法计算给定的键key属于哪个槽:CRC16(key) & 16383 CRC16(key) 计算键key的CRC16校验和。& 16383 计算出一个0至16383之间的整数作为key的槽号。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值