缓存技术 - 分布式 Redis

用户头像
阿飞
关注
发布于: 2020 年 07 月 08 日

之前介绍了缓存技术在互联网技术中是不可缺的解决方案,Redis作为一个key-value存储系统被各个公司应。Redis3.0版本开始支持集群(Cluster)部署。

Redis集群在设计中没有使用一致性哈希(Consistency Hashing),而是使用数据分片引入哈希槽(hash slot)来实现;

Redis 集群中内置了 16384 个哈希槽(2的14次方),当需要在 Redis 集群中放置一个 key-value 时,redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余(slot=CRC16(key)/16384来计算),这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点。理论上最多机器是16384台。

如下图4台服务器槽的逻辑结构:key:a 计算a的hash值,例如10 这个槽在Server1上,所以a应该放在Server1上



发布于: 2020 年 07 月 08 日 阅读数: 49
用户头像

阿飞

关注

还未添加个人签名 2017.12.12 加入

还未添加个人简介

评论

发布
暂无评论
缓存技术-分布式Redis