CAP定理通俗理解
admin
2024-04-28 15:45:22
0

1、什么是CAP定理?

指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。

C:更新操作成功后,所有节点在同一时间的数据完全一致。(事务的一致性:事务前后的数据完整性保持一致)
A:用户访问数据时,系统能否在正常响应时间返回预期结果。(事务的原子性:事务是一个不可分割的工作单位,事务要么发生要么不发生)
P:分布式系统遇到某节点或网络分区故障的时候,仍能对外提供一致性和可用性的服务。

简单来说:
C:强一致性,A:available不是指高可用,而是希望给用户一个好的体验,返回一个结果,P:分布式系统遇到某节点或网络分区故障的时候,仍能对外提供一致性和可用性的服务。

CAP这三个要素最多只能同时实现两点,不可能三者兼顾。
所有只有CP,AP,AC

当前场景:订单系统下单买了1瓶酒,库存系统酒的数量-1。分布式系统中,系统之间需要网络通信等各种问题。无法实现买了1瓶酒,库存即时-1。

CP:订单创建后,等待库存减少后才返回结果。保证数据一致,强一致性表现,用户体验差。(类似银行存钱)

AP:订单创建后,不等待库存减少后就返回结果。那库存数据怎么办?(异步处理后通知订单系统,若异步处理失败,有补偿机制(重新发请求,补录,校对程序)保证数据一致)。(类似淘宝)

AC:不拆分数据库系统,在一个数据库的一个事务中完成操作,即单体应用。下单,减库存在一个事务。缺点:不能做分区, 分区涉及网络,进而涉及分区容错性,进而选CP,AP。

注意:
AC: 单体架构项目,P:指分布式架构下,节点实例故障,网络故障,总能保证一致性和可用性(高可用)

相关内容

热门资讯

【美媒披露美军武器库存吃紧,政... 【美媒披露美军武器库存吃紧,政府拟动员车企增产武器】据美国《华尔街日报》4月15日披露,由于俄乌冲突...
“特朗普如此命令以色列停火,换... 【文/观察者网 熊超然】 虽然黎以为期10天的停火协议于当地时间4月16日生效,但美国方面一度“认...
停火前最后一刻,以色列炸死黎巴... 黎巴嫩和以色列之间达成的为期10天的停火协议已于当地时间4月17日零时生效。然而,据英国路透社报道,...
中东战火正在绞杀你的工资和饭碗 文︱陆弃 有个真相,没几个人敢明着说——中东那摊子事,早不是单纯的地区冲突了。 它就像一只隐形的手,...
霍尔木兹海峡对商船开放通行,国... 伊朗外长17日表示,霍尔木兹海峡在黎巴嫩与以色列停火期间对所有商船通行完全开放,国际原油期货价格受此...
巴西“选美皇后”竟是毒枭妻子!... (来源:现代快报) 豪车、游艇、音乐节、派对……一名经常在社交媒体上炫富的巴西选美皇后,竟然依靠贩毒...
美国又一艘核动力航母着火,三名... 继“福特”号航母发生火灾后,美国海军“艾森豪威尔”号航母也遭遇火灾。 “艾森豪威尔”号航母 据央视...
曼宁格驾车与火车相撞,不幸身亡 据体坛周报,4月16日,欧洲足坛传出噩耗:前奥地利“国门”亚历山大·曼宁格不幸因遭遇严重的交通事故去...
“特朗普不是世界皇帝” 当地时间4月16日,巴西总统卢拉重申美国总统特朗普“不是世界皇帝”,不能一直以战争威胁其他国家。他称...