一致性hash學習

原理

hash值是個環形空間

  • hash算法
  • 值域,32或64位

對象映射到hash空間

hash(object 1) = key 1
...
hash(object n) = key n

node映射到hash空間

相同的hash算法
hash(node a) = key a
...
hash(node x) = key x

對象映射到node

  • hash(object) = key
  • 在hash環形空間上找到key對應的一點
  • 順時針找node

node變動

減少節點

一些映射到原節點的對象遷移到下一對象

增加節點

一些映射到下一節點的對象遷移到新節點

虛擬節點

  • hash算法不一定均衡,特別在節點很少的情況
  • node里面有多個虛擬節點
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容