Memcached相關

二進制協議

不需要文本協議的解析處理,使得memcached性能更高

分布式

將key保存在不同的服務器上

性能限制

請求最大15000qps
流量400Mbps
連接數超過10000個

分布式hash算法
取模

求得鍵整數的hash值,除以服務器臺數,所得的余數決定服務器

缺點: 當添加或者移除服務器時,緩存重組的代價相當巨大,會影響緩存命中率
一致性哈希算法(Consistent Hashing)

首先求出memcached節點的哈希值,并將其配置到0--2^32的圓上。然后用同樣的方法求出存儲數據的鍵的hash值,并映射到圓上。然后從存儲數據映射的位置順時針查找,將數據保存到找到的第一個服務器上。
Consistent Hashing最大程度的抑制了鍵的重新分布,只有從增加服務器地點到逆時針相鄰第一臺服務器之間的鍵會受到影響。
有的Consistent Hashing還采用了虛擬節點的思想,使用一般hash函數的話,服務器的映射地點分布非常不均勻。使用虛擬節點為每個服務器在環上分配100--200個點,這樣能抑制分布不均勻,最大限度的減小服務器增減時緩存重新分布。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容