Redis集群

Redis集群

1、集群的作用?

        Redis集群是Redis提供的分布式数据库方案,集群通过分片(sharding)来进行数据共享,并提供复制和故障转移功能。

2、集群建立方式?

        CLUSTER MEET <ip> <port>

        通过使用以上命令,可以将后面的节点添加到本node节点所在的进群中。

        同时,还应该开启集群模式,即设置cluster-enable=yes。使本服务器成为集群中的一个节点。否则,则是单机模式的一个普通的redis服务器。

3、集群的三种数据结构?

        3.1clusterNode 

        保存节点的当前状态:创建时间、节点名字、当前的配置纪元、ip以及port等。

        3.2clusterLink

        clusterNode结构的link属性是一个clusterLink结构,该结构保存了连接节点所需的有关信息,比如套接字描述符,输入缓冲区和输出缓冲区。

        ⚠️注意:redisClient结构中的套接字缓冲区是用来链接客户端的。而clusterLink中的则是为了链接其他节点的)

        3.3clusterState

        这个结构记录了在当前节点的视角下,集群目前所处的状态,例如集群是在线还是下线,集群包含多少个节点,集群当前的配置纪元等。

 4、什么是槽?什么是槽指派?什么是重新分片?

        redis集群将所有的键统一起来,然后根据一定的算法,将所有键分为16384块。每一块则为一个槽

        将槽分配给某一个节点的过程教过槽指派。因为一个键只能属于一个槽。所以经过槽指派之后,要对这个键的操作就只能在具有此槽的节点上进行操作。redis集群会默认转移到相应的节点

        将一个槽重新分配给其他节点叫做重新分片。

        5、集群中的复制与故障转移?

        在集群中,通过使用命令,可以是一个节点成为另一个节点的从服务器,类似于单机redisslaveof命令。从服务器会复制主服务器的数据。在主服务器下线之后,其他节点会从已下线的服务器的从服务器中筛选出一个最为新的主服务器。此过程与单机版的sentinel的选举模式类似。而配置纪元就是用来标记一个节点下线之后,选举的循环标记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值