首页 体育 教育 财经 社会 娱乐 军事 国内 科技 互联网 房产 国际 女人 汽车 游戏

白话分布式系统中的一致性哈希算法

2020-01-12

实体服务器结点少数比较哈希环分片数据很少,这种特性决议了一致性哈希的数据歪斜,因为数量少导致服务节点散布不均,形成机器负载失衡,如图所示,服务器1的负载远大于其他机器:

注:图片来自网络 详见参阅2

虚拟节点的引进:

注:图片来自网络 详见参阅2

相同的道理, 将服务器结点依据某种规矩来虚拟出更多结点,可是这些虚拟节点就相当于服务器的兼顾 。

比方选用如下规矩在ip后缀添加#index,来完成虚拟节点的定位:

vnode_A_index = con_hash%2^32

vnode_B_index = con_hash%2^32

...

vnode_k_index = con_hash%2^32

vnode_A_index = con_hash%2^32

vnode_B_index = con_hash%2^32

...

vnode_k_index = con_hash%2^32

注:图片来自网络 详见参阅2

这是因为引进了虚拟节点,因而虚拟节点的分片都要实践归属到实在的服务节点上,因而在实践中涉及到虚拟节点和实体结点的映射问题。

注:图片来自网络 详见参阅2

热门文章

随机推荐

推荐文章