分布式基本原理-CAP
什么是CAP
consistency(C 一致性)表示更新操作成功后,所有节点在同一时间的数据完全一致
availability(A 可用性)用户访问时,结果是否符合预期
partitions(P 分区容错性)可以理解为容灾,在某节点下线的时候,是否依旧能提共满足CA的服务
这是一个简单的分布式系统
图1 分布式系统结构
三选二
指的是CAP理论中是没有办法达到三者共存的状态的。当我们选择其中两种特性的时候,便绝对没有办法保证另一种属性
CP状态
即要保证一致性和分区容错性。在图一中表现为订单系统要阻塞等待库存系统的结果返回后,才能返回。
AP
订单创建后,不等待库存减少后就返回结果。那库存数据怎么办?(异步处理后通知订单系统,若异步处理失败,有补偿机制(重新发请求,补录,校对程序)保证数据一致)。(类似淘宝)
AC
不拆分数据库系统,在一个数据库的一个事务中完成操作,即单体应用。下单,减库存在一个事务。缺点:不能做分区, 分区涉及网络,进而涉及分区容错性,进而选CP,AP
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 旅人!