分布式CAP理论

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bocai8058/article/details/82656502
@Author  : Spinach | GHB
@Link    : http://blog.csdn.net/bocai8058

1.起源

CAP原本是一个猜想,2000年PODC大会的时候大牛Brewer提出的,他认为在设计一个大规模可扩放的网络服务时候会遇到三个特性:一致性(consistency)、可用性(Availability)、分区容错(partition-tolerance)都需要的情景,然而这是不可能都实现的。之后在2003年的时候,Mit的Gilbert和Lynch就正式的证明了这三个特征确实是不可以兼得的。该理论是NoSQL数据库管理系统构建的基础。

2.概念

  • 一致性consistency:系统在执行过某项操作后仍然处于一致的状态。在分布式系统中,更新操作执行成功后所有的用户都应该读到最新的值,这样的系统被认为是具有强一致性的。【所有的节点上的数据时刻保持同步】。

  • 可用性availability:每一个操作总是能够在一定的时间内返回结果,这里需要注意的是”一定时间内”和”返回结果”。一定时间指的是,在可以容忍的范围内返回结果,结果可以是成功或者失败。【每个请求都能接受到一个响应,无论响应成功或失败】。

  • 分区容错partition-tolerance:系统对节点动态加入和离开的能力,因为节点的加入和离开可以认为是集群内部的网络分区。分布式系统允不允许不同节点间的网络消息丢失。【系统应该能持续提供服务,即使系统内部有消息丢失(分区)】。

猜你喜欢

转载自blog.csdn.net/bocai8058/article/details/82656502