-
一致性(Consistency model)主要是对存储器上的数据更新和读取规定了一系列规则,使得在这些规则限制下操作数据一定能得到正确的数据。简单理解为,consistency model规定了何时(when)能读取数据的更新,它是程序和数据存储器之间的一个契约;也可以理解为对数据的一致性的程度进行了限定。
-
共识(consensus protocol)则描述了在分布式环境中,多个进程或实例通过一定的原则或规则,对某项内容达成一致的意见。它为了达成一致意见,各进程或实例有一个通信和协商的过程。也可理解为consensus protocol是在实现某个consistency model时采用的技术手段。
举一个形象的例子:假如有一个立法委员会,要决议通过一个法律,并向全国人民发布法律,最后在一定时刻法律生效。
上述过程涉及法律的生成和法律生效两个子过程。其中在法律生成子过程中需要利用共识算法,各议员相互协商最终达成一致的意见,生成法律;在法律生效过程中,一致性算法描述了为了在法律颁布后能在有效时间内使得全国各地法律按照一定的顺序生效,而需要遵守的相关规则和规定。
网友评论