[redis] redis集群模式

参考博客:https://www.cnblogs.com/leffss/p/11993646.html

redis有多种常见的使用和配置方式,包括:

单机模式、主从模式、哨兵模式、集群模式、第三方模式

1.单机模式

仅有一个redis节点,无备用节点和备用副本,无数据持久化和备份策略,适用于可靠性要求不高的纯缓存业务场景。

优点:架构简单、性能高、性价比高。

缺点:不保证数据可靠性(无数据备份能力和容错能力)、性能受限于单个服务节点的处理能力。

2.主从模式

一个主节点和多个副节点(一般是多个不同物理服务器)。提供数据持久化和备份策略,在主从节点间进行数据同步,可以提供如读写分离策略等优化方式。

优点:可靠性高(故障时主从节点切换,数据持久化防止丢失)、提供读写分离策略。

缺点:故障恢复业务复杂、写操作依然在主节点上完成,性能受单个服务节点处理能力限制。有同步和复制错误的可能(影响性能和数据一致性)。

3.哨兵模式

将redis节点分作哨兵集群(redis sentinel)和数据集群。其中哨兵集群进行节点监控、管理、故障发现和处理以及客户端控制等。哨兵节点应为奇数个。

优点:部署简单、解决主从模式的节点切换问题、方便进行redis数据节点扩展、将监控节点和数据节点分离,便于管理。

缺点:部署相对复杂、浪费部分资源、不解决读写分离问题(需要自己实现)。

4.集群模式

Redis Cluster,集群节点最小配置六个节点(三主三从),采用虚拟槽分区,将键值经过哈希映射到整数区间内,每个节点负责维护一部分键值和数据。

优点:无中心、数据分片存储在多个节点,可动态平衡和调整、具有节点高扩展性(可自由添加或删除)、高可用性(即使部分节点故障,也可以通过节点数据副本经过gossip协议交换状态信息并选举出新的master节点)、可以降低运维成本。

缺点:客户端实现复杂,会产生新的异常、节点间可能产生阻塞而导致被误判为节点下线、数据的异步复制导致不能保证数据一致性、多个业务使用同一套集群时,资源隔离性差,易相互影响。从节点仅作冷备份,而不支持读操作。对多个key的操作不友好,难以使用多key操作。

5.第三方模式

posted @ 2021-10-22 23:27  Cheung-10  阅读(1)  评论(0)    收藏  举报