redis cluster集群架构详解(十七)- redis cluster数据分布算法比较-hash算法、一致性hash算法、hash slot算法

Redis Cluster采用Hash Slot算法解决数据分布问题,避免了Hash算法的缓存重建弊端和一致性Hash的热点数据问题。它将16384个slots均匀分配到各master节点,通过CRC16计算key的slot,实现key到master的映射。增加或移除master时,只需迁移部分slots,保持系统的稳定运行。
摘要由CSDN通过智能技术生成

5.9. 数据分布算法

分布式数据存储的核心算法,数据分布的算法主要有三种算法:hash算法、一致性hash算法、hash slot算法。
hash算法 -> 一致性hash算法(memcached使用) -> hash slot算法(redis cluster 使用)

​ redis cluster 用不同的算法,就决定了数据如何分布到这些节点上去。

5.9.1. hash算法和弊端:大量缓存重建

客户端访问key,通过使用key的hash值对redis 节点数取摸,找到对应的节点去获取Key的数据。

其弊端在于,某个master宕机,所有落在此master的请求就会尝试去其他master获取,其他master没有数据,就会去数据库获取数据并进行缓存重建。一旦请求量过大,读取数据库并创建缓存就会出现承载压力过大而导致系统崩溃。

在这里插入图片描述

5.9.2. 一致性hash算法:缓存热点数据容易导致性能瓶颈

先构造一个0到2^32的整数环,然后将服务器节点的Hash值,放在该环上(可以理解为将你的ip做hash,将ip的HashCode放在环上)。然后根据需要缓存的数据的Key,计算Key的HashCode,然后
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值