传统Hash分流与一致性Hash

一、传统Hash分流

这里写图片描述
分析:Hash() % max结果在总在0 ~ max-1间,由此可以做负载均衡,请求分发
问题:分流时,机器宕机会产生失败请求,容易引起请求丢失

二、一致性Hash

这里写图片描述
分析:一致性哈希就是将整个哈希值空间组织成一个虚拟的圆环,如图,哈希函数的值空间为0 ~ 2^32-1,一致性Hash中2^32-1(最大值) + 1 = 0(最小值),因此Hash值空间形成闭环。添加机器,机器宕机,请求不会受任何影响,例如:Node2挂掉了,请求B就由Node3执行。

优点:很好的支持横向扩张、动态增长,具有较好的容错性和可扩展性,应用于分布式缓存、分布式Rpc框架的负载均衡

问题:节点少、分布不均匀而造成数据倾斜

三、数据倾斜问题解决

这里写图片描述
解决:服务器虚拟出多个Hash节点,均匀分布在Hash环上,而且可以根据虚拟出节点的多少来控制服务器的服务能力

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值