2020-09-04 09:16:54
分布式系统设计中,CAP理论指出无法同时满足一致性(C)、可用性(A)、分区容错性(P)三个特性,只能满足其中两个;BASE理论是AP模型的延伸,通过基本可用和最终一致性实现高可用与数据一致性的平衡。Redis采用AP+BASE模型,优先保证分区容错性和服务高可用,数据最终一致。
一、CAP理论核心内容特点:数据强一致性优先,节点间数据必须完全同步。若网络分区导致数据不一致,系统拒绝服务(如返回错误或超时)。
适用场景:对数据一致性要求极高,可接受短暂服务不可用的场景(如银行交易系统)。
特点:服务高可用优先,允许节点间数据短暂不一致,但系统持续响应请派御求。通过异步复制或冲突解决机制实现数据最终一致。
适用场景:对服务可用性要求高,可容忍数据短暂不一致的场景(如社交媒体、电商库存系统)。
基本可用(Basically Available):系统在故障时允许部分功能降级(如响应时间延长、功能限制),但整体仍可服务。
最终一致性(Eventually Consistent):允许节点间数据短暂不一致,但通过异步复制、冲突解决等机制,最终达成数据一致。
分区容错性(P):Redis集群通过分片(Sharding)和主从复制(Replication)分散数据,网络故障时部分节点仍可服务。
可用性(A):主笑信节点故障时,从节点通过选举晋升为主节点,保障服务连续性。
最终一致性(BASE):异步复制可能导致主从数据短暂不一致,但通过WAIT命令或配置最小从节点数量(min-slaves-to-write)控制一致性窗口,最终达成数据一致。