zoukankan      html  css  js  c++  java
  • redis集群

    redis集群 redis锁

    1.Redis集群是一个提供在多个redis节点间共熟数据的程序集。

    2.redis集群的数据分片
    (1)Redis没有使用一致性hash而是引入hash槽的概念。
    (2)Redis集群共有16384个hash槽(不管redis有几台机器,整个集群一共有16384个hash槽)。每个key经过CRC16校验后,对16384取余来决定放到哪个hash槽。
    (3)比如一个集群有A、B、C、3台机器,那么
    节点A,包括0到5500号hash槽
    节点B,包含 5501到11000hash槽
    节点C,包含11001到16384号hash槽

    3.slot存储
    (1)Bit位存储
    (2)1个slot

    3.redis集群的优势
    (1)集群通过分区,提供一定程度的可用性
    (2)自动把数据路由到不同的结点上
    (3)整个集群的部分节点不可用或不可达时,其余节点可继续处理

    4.redis的主从复制模型
    (1)每个主节点都有 n+1个slave,为了保证在master不可用时,能够快速把slave切换成master
    (2)主从的数据复制,采用的是异步复制,
    I.客户端写请求
    II.master写入,告诉客户端写成功了
    III.数据从master复制到Slave
    所以说redis集群的一致性只是弱一致性

    5.重新分片,使用reshard命令可以增加节点,重新分槽
    ./redis-trib.rb reshard 127.0.0.1:7000

    6.reids集群与CPA理论
    (1)CAP,一致性,原子性,分区容错性,三者不可兼得,只有取其中的一种,最多两种,
    (2)redis从单机变成集群后,由一致性、原子性(CA)变成了一致性,分区容错性(CP)


    7.redis锁
    SETNX set if not exist

  • 相关阅读:
    传统文化相关词组(陆续补充)
    面试题 17.09. 第 k 个数
    1544. 整理字符串
    SQL Server 2008 R2 数据库之间的数据同步热备份
    SQLServer数据库同步准实时解决方案
    SQL Server 用链接服务器 同步MySQL
    SqlServer数据库同步方案详解(包括跨网段)
    键值修饰符v-on:keyup.enter
    事件修饰符
    内连处理器里的方法2.html
  • 原文地址:https://www.cnblogs.com/fubaizhaizhuren/p/7545062.html
Copyright © 2011-2022 走看看