架构师训练营——请简述 CAP 原理
CAP理论,是指在一个分布式系统中,一致性、可用性和分区容错性这三个基本需求,最多只能同时满足其中的2个。
C(一致性):所有的节点上的数据时刻保持同步,也就是说对数据的修改完成之后,不管读取的是A节点还是B节点,获取的数据都应该是修改过后的数据。
A(可用性):每个请求都能接受到一个响应,无论响应成功或失败,可以理解为往A节点还是B节点发送请求都需要收到响应。
P(分区容错):分布式系统中,每个子网络就叫做一个区(partition),他们之间通信可能失败,比如A和B节点,A向B发了一条消息但是B可能无法收到。
假设两个节点集{G1, G2},由于网络分片导致G1和G2之间所有的通讯都断开了,如果在G1中写,在G2中读刚写的数据, G2中返回的值不可能G1中的写值。由于A的要求,G2一定要返回这次读请求,由于P的存在,导致C一定是不可满足的。
评论