Redis的集群的搭建

 1、为什么要搭建Redis集群

                Redis 集群能够提供高可用性、高性能、扩展性和数据安全性,适用于各种需要高速缓存和数据存储的复杂应用场景

2、Redis的集群模式 

  1. 主从模式
  2. 哨兵模式
  3. 区中心化模式

3、主从模式 

        redis主从模式表示一个主节点跟若干个从节点。主节点可以负责写操作和读操作。而从节点只负责读操作。主节点的数据会自动同步到所有的从节点上。

 

 

 3.1、如何搭建主从模式 

  1. 修改端口号的名称
  2. 修改dump文件的名称
  3. aof的名称

3.2、开启redis服务命令 

        redis-server  redisxx.conf   

3.3、客户端连接redis

        redis-cli -h ip地址  -p  端口号

3.4、配置主从关系

        配从不配主        slaveof 主节点IP  主节点的端口号port

        info   replication  查看主从的状态 

主从模式的缺点: 当主机宕机不会自动选举master节点。导致一旦主机宕机就无法进行写操作。当从机宕机恢复之后需要从新配置 slaveof 主节点IP  主节点的端口号port

4、哨兵模式

         为了解决主从模式的缺陷:当主节点宕机之后,从节点无法直接上位。

 

注意:搭建哨兵服务时尽量搭建奇数个

 4.1哨兵工作原理

 

 4.2、配置哨兵

        修改sentinel.conf文件

 4.3、启动哨兵服务

        redis-sentinel  sentinel-conf

当主机宕机之后,会自动选举主机

当主机恢复后会变成从机

4.4选举机制 

 

优先级在redis.conf中默认:replica-priority  100,值越小优先级越高

偏移量是指获得原主机数据最全的

每个redis实例启动后都会随机生成一个40位的runid

4.5、哨兵模式的优缺点

        优点:保证了高可用,哨兵监控各个节点实现自动故障迁移

        缺点:主机宕机之后主从的切换需要时间,切换期间不能对外提供服务,没有解决master写的压力

5、去中心化模式

 

        redis集群中内置了16384个哈希槽,当然需要在Redis集群中放置一个key-value时,redis先对key使用crc16算法算出一个整数结果,然后把结果对16384求余,这样每个key都会对应一个编号0~16384之间的哈希槽,redis会根据节点数量大致均等的将哈希槽映射到不同的节点

        当你往Redis Cluster中加入 key时,会根据crc16(key) mod 16384计算这个key应该分布到那个hash slot中,一个hash slot中会有很多key和value。也可以理解为表的分区,使用单节点时的redis只有一个表,所有的key都放在这个表里;改用redis cluster以后会自动升高16384个分区表,当添加(insert)数据时会根据上面的简单算法来决定key应该存在那个分区,每个分区有多少key

 

 启动集群

redis-server redisxxx.conf

查看启动的redis

 分配槽以及主从关系

redis-cli --cluster create --cluster-replicas 1 172.16.7.140:7001 172.16.7.140:7002 172.16.7.140:7003 172.16.7.140:7004 172.16.7.140:7005 172.16.7.140:7006
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值