一线大厂面试真题——说说你对CAP的理解

72 阅读2分钟

概述

分布式架构之所以复杂,就是因为增加了网络通信,而网络通信本身具有不确定性。但是作为业务支撑的整个技术架构,所有业务的处理必须要具备确定性。

因此在这样一个矛盾下,导致架构变得更加复杂。

面试题”说说你对CAP的理解“这个问题,就是在这个背景下产生的

考察目的

这个问题考察难度算中等,主要针对5年以上开发经验的同学。

考察目的有两个:

  1. 了解求职者对于分布式架构的理解

  2. 在分布式架构中,很多技术方案在落地的时候需要有取舍,要么是CP、要么是AP,理解CAP定理,能够更好的做出合适的选择

问题解答

CAP模型,在一个分布式系统里面,不可能同时满足三个点:

一致性(Consistency),访问分布式系统中的每一个节点都能获得最新的数据。

可用性(Availability),每次请求都能获得一个有效的访问,但不保证数据是最新的。

分区容错性(Partition tolerance),分区相当于对通信耗时的要求,系统如果不能在时限范围内达成数据一致,就意味着发生了分区的情况。

在CAP模型中只能满足CP或者AP,之所以不能满足CA,因为网络通信的不确定性可能会导致分区容错,也就是分区容错性必然是存在的,因此我们只能在一致性和可用性之间做选择。

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                    

原文链接:blog.csdn.net/gnwu1111/ar…