redis架构模式以及各自特点

13 篇文章 0 订阅
11 篇文章 0 订阅

redis架构模式以及各自特点

1、单机版

(1)架构图

(2)特点

        a、架构简单,只要一个redis实例。

        b、内存容量有限

        c、处理能力有限

        d、无法高可用(单机存在单点故障) 

2、主从复制

  Redis 的主从复制(replication)功能允许用户根据一个 Redis 服务器来创建任意多个该服务器的复制品,其中被复制的服务器为主服务器(master),而通过复制创建出来的服务器复制品则为从服务器(slave)。 只要主从服务器之间的网络连接正常,主从服务器两者会具有相同的数据,主服务器就会一直将发生在自己身上的数据更新同步(注意:只能是单方向同步,master向slave同步)给从服务器,从而一直保证主从服务器的数据相同。此架构模式中,客户端可以直接与slave交互,直接向slave获取数据,降低了master的读压力。

(2)特点

        a、无法保证高可用(master仍然是单击,仍然存在单点故障)

        b、没有降低master写压力,仅仅降低了master的读压力

3、哨兵模式(主从复制模式的升级版,加入了哨兵监控,保证了高可用)

  Redis sentinel 是一个分布式系统,它可以监控 redis 主从服务器,并在主服务器下线时自动进行故障转移。其中三个特性:

        监控(Monitoring):Sentinel  会不断地检查你的主服务器和从服务器是否运作正常。

        提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。

        自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作。

(1)架构图

(2)特点

        a、主从切换需要时间,可能会造成数据丢失

        b、仍然没有降低master的读压力,仅仅降低了master的读压力

4、集群(直连型)

从redis 3.0之后版本支持redis-cluster集群,Redis-Cluster采用无中心结构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接。

(1)架构图

(2)特点

        a、无中心架构(不存在哪个节点影响性能瓶颈)。

        b、数据按照 slot 存储分布在多个节点,节点间数据共享,可动态调整数据分布。

        c、可扩展性,可线性扩展到 1000 个节点,节点可动态添加或删除。

        d、高可用性,部分节点不可用时,集群仍可用。通过增加 Slave 做备份数据副本

        e、实现故障自动 failover,节点之间通过 gossip 协议交换状态信息,用投票机制完成 Slave到 Master 的角色提升。

最后:

最近我整理了整套《JAVA核心知识点总结》,说实话 ,作为一名Java程序员,不论你需不需要面试都应该好好看下这份资料。拿到手总是不亏的~我的不少粉丝也因此拿到腾讯字节快手等公司的Offer

[Java架构资源交流群] ,找管理员获取哦-!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值