漫画编程(二)

发布时间:2019年09月10日 阅读:273 次

为了解决数据迁移慢的问题,我们采取一致性哈希的问题。

目前应用在分布式缓存中。

可以有效的解决分布式存储结构下

动态增加和删除节点所带来的问题。


我们把全量的缓存空间当做一个环形存储结构。

然后将每一个缓存key转化成一个32位的二进制数,

也就是对应着环形空间的某一个缓存区。

我们的每一个缓存节点采用相同的hash算法,映射到环形空间中。

每一个key顺时针方向最近节点就是key所归属的存储节点。


这样在动态插入和删除节点的时候,

为了优化节点太少而产生的不均衡的情况,

我们引入虚拟节点,就是把原来的物理节点映射处n个子节点

最后把所有的子节点都映射到环形空间上。由于虚拟节点数量较多

缓存key与虚拟节点之间的映射变得相对均衡了。

Tag:
相关文章

发表评论: