传统的算法是hash值对结点个数取模,这样导致,结点增加或者删除的时候,数据迁移非常多。但是这种时候数据是均匀分布的。一致性哈希呢,把服务器hash到环上,然后根据数据hash到环上的位置决定放在哪个服务器上,这样解决了数据迁移多的问题,但是会产生数据分布不均衡的问题。增加虚拟节点来解决这个问题。
【参考链接】https://www.zsythink.net/archives/1182
传统的算法是hash值对结点个数取模,这样导致,结点增加或者删除的时候,数据迁移非常多。但是这种时候数据是均匀分布的。一致性哈希呢,把服务器hash到环上,然后根据数据hash到环上的位置决定放在哪个服务器上,这样解决了数据迁移多的问题,但是会产生数据分布不均衡的问题。增加虚拟节点来解决这个问题。
【参考链接】https://www.zsythink.net/archives/1182