Skip to content

Latest commit

 

History

History
15 lines (15 loc) · 991 Bytes

Consistent_Hashing.md

File metadata and controls

15 lines (15 loc) · 991 Bytes

一致性哈希

  • 用于分布式存储做负载均衡

原理

  • 哈希环,主机放置在环上,每个主机只负责顺时针过来的这一段区间的数据维护。
  • 扩容和搜索的代价很小。

虚拟节点

  • 基础版一致性哈希可能存在负载不均衡问题,即一段时间内所有请求都由A负责,而B空闲。
  • 引入虚拟节点,将主机复制多个副本,加入到哈希环中,当主机节点数量变大时,请求就会更均匀。
  • 虚拟节点,增加了一层映射。
    1. 先是客户端请求到虚拟节点的映射。
    2. 再是虚拟节点到物理节点的映射。

问答

  1. 第一步:取模。缺点:增减服务器不友好,扩容性较差。
  2. 第二步:引入哈希环。通常为2^n, 每台服务器负责顺时针映射过来的请求。缺点:可能出现哈希不均衡的现象。
  3. 第三步:引入虚拟节点。一个实体对应N个虚拟的节点,可以使哈希映射更均匀。