redis集群方式及高可用架构

Redis集群模式

1.主从模式,单台服务器即可,无高可用,为1主2从方式
主节点可读写,从节点只读,数据会从主节点同步至从节点
2.cluster模式 3.0以上版本支持
Redis Cluster基本架构:Redis Cluster中有多个主节点,每个主节点都负责进行数据读写操作,并且每个节点之间会进行通信。
保证高可用,每个主节点都至少有一个从节点,当主节点故障,Cluster会按照规则实现主备的高可用性,对于节点来说,有一个配置项:cluster-enabled,即是否以集群模式启动
Redis cluster集群至少需要三个master节点,实现集群高可用需要六台服务器布置节点。
集群架构:
在这里插入图片描述

redis cluster是一个去中心化的集群,每个节点都会跟其他节点保持连接,每个节点之间会互相通信。
每个master可以对应多个slave 以保证master挂掉之后新的slave成为主节点而没有salve。

以下以云厂商redis集群架构模式介绍

阿里云redis集群架构
主从模式
在这里插入图片描述
高可用架构模式
在这里插入图片描述

阿里云通过内部SLB方式对外开放一个redis地址以实现高可用 阿里云 提供 2.8、 4.0、 5.0版本

华为云redis架构
主从版

在这里插入图片描述
集群高可用版
在这里插入图片描述
云厂商的高可用集群架构模式没有使用官方推荐的集群模式

私有化部署时三种方式 主从模式 官方redis cluster模式 redis sentinel模式
Redis 集群 有几个master节点就会有几个redis地址。
Redis cluster可以使用官方提供的ruby脚本完成部署
在这里插入图片描述
Redis sentinel 集群实现高可用
哨兵模式是利用主从架构对master进行监控,当master挂掉之后挑选slave作为master节点
在这里插入图片描述
哨兵模式是所有的客户端都通过 sentinel程序获取redis的master服务。

Redis cluster:
优点:
1.可扩展:可线性扩展到 1000 多个节点,节点可动态添加或删除;
2.高可用性:部分节点不可用时,集群仍可用。通过增加 Slave 做 standby 数据副本,能够实现故障自动 failover,节点之间通过 gossip 协议交换状态信息,用投票机制完成 Slave 到 Master 的角色提升;

缺点:
1.节点会因为某些原因发生阻塞(阻塞时间大于 clutser-node-timeout),被判断下线,这种 failover 是没有必要的。
2.数据通过异步复制,不保证数据的强一致性。
3.多个业务使用同一套集群时,无法根据统计区分冷热数据,资源隔离性较差,容易出现相互影响的情况。
4.不支持多数据库空间,单机下的 redis 可以支持到 16 个数据库,集群模式下只能使用 1 个数据库空间,即 db0

Redis Sentinel 哨兵模式:
优点:
1.相比主从版 可以检测master状态
2.可实现master动态转移
3.可以实现一套 Sentinel 监控一组 Redis 数据节点或多组数据节点
缺点:
1.如果是从节点下线了,sentinel是不会对其进行故障转移的,连接从节点的客户端也无法获
2.取到新的可用从节点。
3.不保证数据的强一致性,无法实现动态扩容。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

怪兽在此

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值