美文网首页
redis数据分布算法

redis数据分布算法

作者: 斜阳独倚东楼 | 来源:发表于2020-03-22 23:13 被阅读0次

    1.hash算法,数据取模

    最大的问题,当一台宕机的时候,原来对3取模,变成对2取模,可能会打到不同的机器上去。

    hash取模

    2.一致性hash(自动缓存迁移)+虚拟节点(自动负载均衡)

    一致性hash+虚拟节点

    3.redis cluster的hash slot算法

    redis cluster有固定的16384个hash slot,对每个key计算CRC16值,然后对16384取模,可以获取key对应的hash slot

    redis cluster中每个master都会持有部分slot,比如有3个master,那么可能每个master持有5000多个hash slot

    hash slot让node的增加和移除很简单,增加一个master,就将其他master的hash slot移动部分过去,减少一个master,就将它的hash slot移动到其他master上去

    移动hash slot的成本是非常低的

    客户端的api,可以对指定的数据,让他们走同一个hash slot,通过hash tag来实现

    hash slot

    相关文章

      网友评论

          本文标题:redis数据分布算法

          本文链接:https://www.haomeiwen.com/subject/lybbyhtx.html