介绍一种新的路由策略HRW(参见wikipedia介绍)
先介绍一个O(N)的算法,此算法的基本流程如下(以下内容引用自facebook的proxygen):
假设有3个Cluster(这里可把Cluster等同于一台机器, 下同), 名字为n, 权重为w:
Cluster1 | Cluster2 | Cluster3 |
n="ash4c07" | n="frc1c12" | n="prn1c11" |
w=100 | w=400 | w=500 |
首先, 基于名字n给每个Cluster计算一个哈希值h:
Cluster1 | Cluster2 | Cluster3 |
n="ash4c07" | n="frc1c12" | n="prn1c11" |
w = 100 | w=400 | w=500 |
h = hash(n) |