简述 CAP 原理
CAP原理有称为CAP原则、CAP定理
是指一个分布式系统中,一致性(Consistency),可用性(Availability),分区耐受性( Partition tolerance)三者不可兼得。只能满足其中两项,CA、CP或AP。
一致性(C)
定义:在分布式系统中,同一时刻,所有节点的数据是否相同。
分布式系统一致性是分布式系统中比较重要的话题。如果数据仅存在一台机器上,就会有单点故障。为了解决这个问题,可以将数据复制到多个节点上,以避免由于单点的永久性故障导致的数据丢失问题。如何规定用户对多副本数据进行读写,就需要制定数据读写协议,也被成为一致性模型。
可用性(A)
定义:集群内部分节点故障后,集群整体是否还能对外提供服务。
大多是情况下,用户希望自己的每次点击都得到响应,而不是返回一个错误或者失去响应。单纯对针对可用性来说,仅仅是给出响应即可,不需保证数据是否是最新的。
分区耐受性(P)
以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择。
所以关于CAP原理,在分布式系统环境下,在保证分区耐受性的前提下,在可用性和一致性之间平衡。
评论