Redis教程

Redis - 为何redis集群用哈希槽,而不用一致性哈希?

本文主要是介绍Redis - 为何redis集群用哈希槽,而不用一致性哈希?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

总结

1:Hash slot(slot 空间)对比一致性哈希(环空间) 可以做到数据分配更均匀 

  • 有 N 个节点,每个节点是准确的承担 1/N 的容量
  • 一致性哈希,它使用的是hash函数返回的值是随机的。

2:Hash slot 更便捷的新增/删除节点

  • 假设已有R1、R2、R3 节点
  • 若新增 R4 节点,只需要从 R1、R2、R3 挪一部分 slot 到 R4 上
  • 若删除 R1  节点,只需将 R1 中 slot 移到 R2 和 R3 节点上, 节点之间的槽移动不会停止服务,集群是一直可用状态。

3:当一致性哈希增删节点时,会导致部分数据无法命中,严重的甚至会导致缓存雪崩。

 

参考文献

https://www.zhipin.com/wenti/w_8b681bc5db9c64detnVy2t25EFE~.html

这篇关于Redis - 为何redis集群用哈希槽,而不用一致性哈希?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!