当前位置: 首页 > news >正文

CAP定理通俗理解

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:指分布式架构下,节点实例故障,网络故障,总能保证一致性和可用性(高可用)

相关文章:

  • 做网站的公司金坛/电脑网页制作
  • 成都个人兼职做网站/阿里指数查询官网
  • 成都网站建设冠辰/怎么百度推广
  • 手机网站仿站教程/免费友情链接网
  • 天津网站建设价格多少/seo网页优化服务
  • 苏州网站建设风兰/外贸获客软件
  • 内存分配函数(动态内存分配)详解
  • MCU-51:让LED闪烁起来
  • 前端基础(十五)_多栏布局(两列自适应布局、圣杯布局---三列布局、双飞翼布局--三列布局、等高布局)
  • 贪心算法(Java版本)
  • IU酒店释放轻中端投资活力,开启曲靖酒店新篇章
  • 【正点原子I.MX6U-MINI】删除开机内核Logo和进度条界面Logo(二)
  • Halcon常用算子(库函数)整理
  • Aquatox水环境与水生态模型实践技术应用
  • 转行人必看:数字IC前端设计学习路线与方法(内附学习视频)
  • 单片机——LED
  • postgres 源码解析46 可见性映射表VM
  • Android制作简易的音乐播放器和视频播放器