您好、欢迎来到现金彩票网!
当前位置:星彩网 > 分布式多媒体 >

深入浅析分布式系统的一致性模型

发布时间:2019-05-11 09:07 来源:未知 编辑:admin

  一致性模型在分布式系统中很重要,最完美的一致性模型是所有的操作都是瞬间完成,并且按照真实客观的发生时间排序,这种模型是不存在的,因为一般的操作很难看做瞬时的,而且分布式系统中,很难保证所有节点都知道精确的物理时间。所以下面介绍几种常用的一致性模型。

  这种模型的精确定义来自于Leslie Lamport老哥(以后我们会多次提到他)。

  他本来是定义了多CPU多进程之间的一致性模型,但是也可以推广到分布式系统中,实际上多核多线程程序也都可以当做分布式系统来研究。

  放到分布式系统里,意思就是不管系统怎么运行,得到的结果就好像把所有节点的所有操作按照某个sequential order排序后运行,但是在这个sequential order顺序中,来自同一个节点的操作仍然保持着它们在节点中被指定的顺序。

  Leslie Lamport老哥的说法一贯的佶屈聱牙,我们通过几个例子来看一下。图中从左向右表示物理时间,W(a)表示写入数据a,R(a)表示读出数据a。

  可以看出,这两个系统都不是完美的强一致性,但是它们的模型都可以看做Sequential Consistency,因为通过如下变换,总是可以自圆其说,也就是可以找到符合定义的sequential order。

  Causal consistency要求如果两个事件有因果关系,那么在所有节点上必须观测到这个因果关系。

  比如下图中,我们认为P2写入的3是基于它读出来的1计算出来的,它读出来的1又是由P1的写入产生的,因此认为P1写入1和P2写入3具有因果关系。P4没有观测到这个因果关系,所以这个系统不具备Causal Consistency。

  而下图中,认为P2写入3和P1写入1不具有因果关系,则P4和P3可以以任意顺序观测到它们。这个系统仍然可以说具有Causal consistency,但是不具备Sequential Consistency。返回搜狐,查看更多

http://emeklishop.net/fenbushiduomeiti/235.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有