集群与分布式的区别:集群的每个成员都具有完成整个任务的能力,分布式将任务分成多个部分。
增加一个Redis节点时,数据命中率显著下降,可能会造成穿过cache,直击DB。

一致性hash(Consistent Hashing)

将对象和cache都映射到同一个hash数值空间中,并且使用相同的hash算法。
Redis 02 Redis实现分布式理论基础
顺时针分类到第一个遇到的cache中。
当删除或增加一个节点时,只会影响后面一个节点cache。
可能的问题:
cache节点分布的极不均匀(Hash倾斜性);

Hash倾斜性

Redis 02 Redis实现分布式理论基础

虚拟节点

引入虚拟节点
Redis 02 Redis实现分布式理论基础
引入多个虚拟节点,可以解决Hash倾斜性问题,增加命中率,命中率计算公式:
(1n/(n+m))100(1-n/(n+m))*100%
Redis 02 Redis实现分布式理论基础

相关文章:

  • 2021-06-20
猜你喜欢
  • 2021-12-06
  • 2021-05-29
  • 2022-12-23
  • 2021-09-30
  • 2021-06-19
  • 2022-12-23
  • 2021-11-29
相关资源
相似解决方案