分布式理论

Posted daiwei-dave

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式理论相关的知识,希望对你有一定的参考价值。

 

一、分布式理论

1.CAP理论

CAP理论是说对于分布式数据存储,最多只能同时满足一致性(C,Consistency)、可用性(A, Availability)、分区容忍性(P,Partition Tolerance)中的两者。

 

1.一致性

是指对于每一次读操作,都能够读到最新写入的数据,且每个节点读取到的数据是一致的。

 

对于客户端来说,一致性指的是并发访问更新过的数据如何获取的问题。


从服务端来看,则是更新如何复制分布到整个节点,以保证数据最终一致。

从多个应用系统来看,是保证各个业务系统冗余的数据和主数据系统的数据一致性。

 

1.一致性级别

1、强一致性

这种一致性级别是最符合用户直觉的,它要求系统写入什么,读出来的也会是什么,用户体验好,但实现起来往往对系统的性能影响大

 

2、弱一致性

这种一致性级别约束了系统在写入成功后,不承诺立即可以读到写入的值,也不承诺多久之后数据能够达到一致,但会尽可能地保证到某个时间级别(比如秒级别)后,数据能够达到一致状态

 

3、最终一致性

最终一致性是弱一致性的一个特例,系统会保证在一定时间内,能够达到一个数据一致的状态。这里之所以将最终一致性单独提出来,是因为它是弱一致性中非常推崇的一种一致性模型,也是业界在大型分布式系统的数据一致性上比较推崇的模型。

 

在实践中,多个系统要实现最终一致性的兜底解决办法多数是通过数据比对来实现的,如多个业务系统通过比对将生产者数据备份的大数据平台进行比对,从而实现各个业务系统的最终一致性。

 

2.可用性

可用性:是指对于每一次请求,都能够得到一个及时的、非错的响应。
系统能够很好的为用户服务,不出现用户访问服务时服务器不可用,或者访问超时等用户体验不好的情况。

3.分区容忍性

The system will continue to function when network partitions occur.

即分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务。

 

分区容错性要求能够使应用虽然是一个分布式系统,而看上去却好像是在一个可以运转正常的整体。

它跟趋向于单机模式的对比,如一台机器宕机了,其他机器一样能够提供同等的服务。但机器部署得越多,一致性和可用性就越难保证。

比如现在的分布式系统中有某一个或者几个机器宕掉了,其他剩下的机器还能够正常运转满足系统需求,对于用户而言并没有什么体验上的影响。



以上是关于分布式理论的主要内容,如果未能解决你的问题,请参考以下文章

分布式理论基础之CAP理论&BASE理论

分布式系统基础理论之CAP理论

分布式理论基础:CAP与BASE理论

分布式理论基础:CAP与BASE理论

分布式系统理论--CAP理论BASE理论

分布式架构之「 CAP理论」