缓存中间件Redis Cluster集群模式

1. Redis Cluster简介

1.1 什么是集群模式?

集群是指:

  • 多个主从(sharding-分片)模式的组合;
  • 更大的容量,更好的性能;
  • 更高的可用性;

常见的集群管理模式:

  • 中心化
  • 去中心化
1.2 官方文档

官方原理: https://redis.io/topics/cluster-spec
官方使用: https://redis.io/topics/cluster-tutorial

1.3 Redis Cluster 特点
  1. 去中心化,Gossip提供通信基础集群模式
  2. 客户端和后端直连交互
  3. 集群自动分片路由
  4. 集群自动故障恢复
  5. 集群支持弹性伸缩
1.4 Redis Cluster 优缺点

2. Redis Cluster 实现机制

2.1 Redis Cluster 相关配置
  1. cluster-enabled yes
    开启Redis Cluster模式
  2. cluster-config-file nodes-6379.conf
    cluster node节点元信息配置文件,路径是dir
  3. cluster-node-timeout 15000
    多少毫秒连接不上后,判断该node状态为不可用
  4. cluster-replica-validity-factor 10
    当slave和master失联时间超过(node-timeout * replica-validity-factor) + repl-ping-replica-period + node-timeout时间时,就不会自动failover,因为此时slave上的数据可能会比较旧了。这种情况一般发生在主从出现分区的时候
  5. cluster-migration-barrier 1
    当集群中出现了只有主一个副本的分片时,其他主从分片如果有大于cluster-migration-barrier分片数时,可以分配出一个从副本给孤立的主。提升整体集群的高可用
  6. cluster-require-full-coverage yes
    控制集群高可用,设置为yes,则允许在分片不可用或者集群路由未完全分配的情况下,其他的分片仍然提供服务
  7. cluster-replica-no-failover no

控制是否自动failover,在主挂掉的情况下

2.2 Redis Cluster集群路由
  • 分片Sharding:
    16384个Slots
    (不多不少,这里面其实是和gossip协议的通信成本和集群状态收敛有关)

  • 集群路由过程


2.3 Redis Cluster节点探活
2.4 故障恢复
  • 自动failover


  • 手动failover


  • Force failover


  • Takeover failover


3. 更多内容,可以查看

Redis集群分片存储 - cluster


如果觉得有收获,欢迎点赞和评论,更多知识,请点击关注查看我的主页信息哦~

你可能感兴趣的:(缓存中间件Redis Cluster集群模式)