envoyproxy/envoy

HRW Hash Load Balancing

Open

#15,596 创建于 2021年3月22日

在 GitHub 查看
 (7 评论) (0 反应) (0 负责人)C++ (5,373 fork)batch import
area/load balancingdesign proposalenhancementhelp wanted

仓库指标

Star
 (27,997 star)
PR 合并指标
 (平均合并 8天) (30 天内合并 378 个 PR)

描述

HRW Hash Load Balancing

(Highest Random Weight, HRW) hashing, an alternative to the ring based, consistent hashing, allows clients to achieve distributed agreement on which node (or proxy) a given key is to be placed in.

this hash has two advantages

1、Load balancing: Since the hash function is randomizing, each of the n nodes is equally likely to receive the key K. Loads are uniform across the sites.

2、High hit rate: Since all clients agree on placing an key K into the same node N , each fetch or placement of K into N yields the maximum utility in terms of hit rate. The key K will always be found unless it is evicted by some replacement algorithm at N.

how about adding HRW hash to envoy ?

https://en.wikipedia.org/wiki/Rendezvous_hashing

贡献者指南