面向对象编程学习

用户头像
一叶知秋
关注
发布于: 2020 年 07 月 14 日

请简述 CAP 原理:

在分布式网络分区环境中,数据的一致性、可用性和分区容忍性三者之间,至多只能保证两者,无法三者同时保证。

1、分布式是前提

CAP理论的主要场景是在分布式环境下,在单机环境下,基本可不考虑CAP问题。

2、C、A、P准确定义

Consistency:一致性,对于任何从客户端发达到分布式系统的数据读取请求,要么读到最新的数据要么失败,其强调的是数据正确。

Availability:可用性,对于任何求从客户端发达到分布式系统的数据读取请求,都一定会收到数据,不会收到错误,但不保证客户端收到的数据一定是最新的数据,强调的是不出错。

Partition tolerance:分区容忍性,分布式系统应该一直持续运行,即使在不同节点间同步数据的时候,出现了大量的数据丢失或者数据同步延迟,强调的是不挂掉。

3、对于一个分布式系统而言,P是前提,必须保证,因为只要有网络交互就一定会有延迟和数据丢失,这种状况我们必须接受,必须保证系统不能挂掉。

所以,按照CAP理论三者中最多只能同时保证两者的论断,对于任何分布式系统,设计时架构师能够选择的只有C或者A,要么保证数据一致性(保证数据绝对正确),要么保证可用性(保证系统不出错)。



用户头像

一叶知秋

关注

还未添加个人签名 2018.05.13 加入

还未添加个人简介

评论

发布
暂无评论
面向对象编程学习