1、单机版

(1)架构图

redis架构模式以及各自特点

(2)特点

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

            b、内存容量有限

            c、处理能力有限

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

 

2、主从复制

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

 

redis架构模式以及各自特点

(2)特点

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

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

 

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

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

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

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

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

(1)架构图

redis架构模式以及各自特点

(2)特点

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

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

 

4、集群(直连型)

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

(1)架构图

redis架构模式以及各自特点

(2)特点

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

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

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

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

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

参考:https://www.cnblogs.com/jasontec/p/9699242.html

相关文章: