redis一致性hash和hash槽

简介
一致性哈希用于解决分布式缓存系统中的数据选择节点存储问题和数据选择节点读取问题以及在增删节点后减少数据缓存的消失范畴,防止雪崩的发生。
哈希槽是在redis cluster集群方案中采用的,redis cluster集群没有采用一致性哈希方案,而是采用数据分片中的哈希槽来进行数据存储与读取的。
一致性哈希
一个0-2^32 的闭合圆,占用4个字节,所有节点存储的数据都是不一样的。计算一致性哈希是采用的是如下步骤:
对节点进行hash,通常使用其节点的ip或者是具有唯一标示的数据进行hash(ip),将其值分布在这个闭合圆上。将存储的key进行hash(key),然后将其值要分布在这个闭合圆上。从hash(key)在圆上映射的位置开始顺时针方向找到的一个节点即为存储key的节点。如果到圆上的0处都未找到节点,那么0位置后的顺时针方向的第一个节点就是key的存储节点。
添加节点带来的影响 图为一致性

redis一致性hash和hash槽最先出现在Python成神之路

版权声明:
作者:lichengxin
链接:https://www.techfm.club/p/16752.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>