一致性哈希算法的一种实现和改良
应用场景
一致性哈希算法是一种负载均衡算法,其目的是为了解决因特网中的热点(Hot spot)问题。
算法
- 在一个环上取2^32个节点
- 使用server的ip或者名称取hash,然后映射到上述环的节点上
- 将请求哈希,得到的值取顺时针方向上最近的server作为响应服务器
改进
为了解决仍然有可能存在的负载不均衡问题,引入了虚拟节点机制。通过将server的ip或者名称添加后缀的方法,增加多个虚拟节点,这些请求仍然会被响应的实体机器处理,但是却提高了请求的均衡性。
阿里的改进
2017双11技术揭秘—分布式缓存服务Tair的热点数据散列机制