写点什么

架构师训练营第六周作业

用户头像
跳蚤
关注
发布于: 2021 年 02 月 07 日
  1. 请简述 CAP 原理。

先简单地介绍下什么是 CAP。

C 指的是一致性,指的是访问所有结点取得的数据都是一样的,指的是强一致性。

A 指的是高可用性,指的是所有结点都是高可用的,不能出现延迟现象。

P 指的是分区容错性,指的是由于网络是不可靠的,所有节点之间很可能出现无法通讯的情况,在节点不能通信时,要保证系统可以继续正常服务。

CAP 原理指的是在分布式系统中不可能同时满足 C 和 A 和 p 三个条件的情况,在进行架构设计时,不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍。由于网络的不可靠性质,大多数开源的分布式系统都会实现 P,也就是分区容忍性,之后在 C 和 A 中做抉择。

虽然在设计系统时不能同时满足三个条件,但是也并不是说,保证了其中 2 点后,就要完全抛弃另外一点。只是相对的要做一些牺牲。比如在保证 CP 的情况下,虽然没办法保证高可用性,但这不意味着可用性为 0,我们可以通过合理的设计尽量的提高可用性,让可用性尽可能的接近 100%。同理,在 AP 的情况下,也可以尽量的保证数据的一致性,或者实现弱一致性,即最终一致性。

用户头像

跳蚤

关注

技术成就了我,我相信技术能让我飞 2020.08.06 加入

本人从事软件开发20年,系统架构7年,担任部门经理、架构部经理、技术经理

评论

发布
暂无评论
架构师训练营第六周作业