2010-09-29 73 views
2

我想了解哈希如何一致工作。這是我想follow但不能跟隨,開始與我的問題的文章有:一致哈希如何工作?

  1. 我明白了,服務器映射到哈希碼的範圍和數據分佈較爲固定,並期待成爲簡單。但是,如何處理在集羣中添加新節點的問題?

  2. 示例java代碼不工作,任何建議基於一致性散列的簡單java

更新

  1. 任何替代一致性哈希?

回答

1

我會回答你的問題的第一部分。首先,該代碼存在一些錯誤,所以我會尋找一個更好的例子。

這裏以緩存服務器爲例。

當你想到一致性散列時,你應該把它看作一個圓環,就像你鏈接的文章所做的那樣。當添加新的服務器時,它將沒有數據開始。當客戶端獲取應該在該服務器上的數據並且沒有找到它時,會發生緩存未命中。程序應該在新節點上填寫數據,以便將來的請求將成爲緩存命中。從緩存的角度來看就是這樣。