一直很好奇一致性哈希环的以下问题:
1、机器的哈希值为什么会均匀分布在一个环上,有没可能几个机器的哈希值都隔着非常近?
2、存取数据的时候,id的哈希值如果都落在一个很小的区域怎么办?是怎么保证id的哈希值在环上均匀分布的?
以图说明:红色的圆点是机器的哈希位置,绿色的方块是数据id的哈希位置,图中这种情况是否存在?又是如何解决的?
不能保证.任何哈希算法都会有最糟情况,不可能均匀分布.
我的理解是这样的.可能不对不要喷我..
哈希值是有可能一样的
你看看 最典型的 就是字典 (dictionary) 的时间复杂度 不是n 是 lgn2 就是这个原因