1998年,加利福尼亚大学的计算机科学家Eric Brewer提出分布式系统有三个指标。
一致性委派的第一个字符分别是c、a和p。
埃里克布鲁尔说,这三个指标不能同时达到。 这个结论称为CAP定理。
一致性在同一时间点,所有分区的值都是一致的。
要确保同一时间所有分区的值一致,则不满足可用性,因为在更改一个分区时必须将其锁定,以使其他分区不可用。
availability「availability”随时用可用分区进行响应。
任何时候有分区都不能保证数据的完整性。 例如,如果用户a在分区1中修改数据,而同一用户b请求分区2,则在试图保证可用性时数据总是不满足一致性。
Partition tolerance :在分布式系统中,节点配置的网络本来应该是相连的。 但是,由于一些故障,一些节点之间可能不相连,整个网络分为几个区域。 数据分布在这种无联系的领域。 这叫做分区。
聪明雨的一个数据项只存储在一个节点上,因此分区出现后,与该节点不相连的部分将无法访问该数据。 此时分区是无法忍受的。
为了提高分区的可接受性,必须将一个数据项复制到多个节点。 分区发生后,该数据项可能会分布在每个区域中。 宽容性提高。
但是,如果将数据复制到多个节点,则会出现一致性问题。 这意味着多个节点上的数据可能不一致。 为了保持一致性,每次写入时都必须等待所有节点成功写入。 这种等待会带来可用性问题。
一般来说,数据所在的节点越多,分区的可接受性就越高,但复制更新的数据越多,确保一致性就越难。 为了确保一致性,更新所有节点上的数据需要时间,从而降低可用性。
因此,分区容错是指通过划分分区来提高容错能力,如果分区为1,则不能进行容错,因此分区必须大于1。 因此,我们认为CAP的p总是成立的。 CAP定理表明剩下的c和a不能同时进行。
分布式系统:在相互隔离的空间中提供数据服务的系统。
CAP抽象:不同空间的数据在同一时间,状态一致。
(c )代表状态一致
答:表示同一时间
p :表示不同的空间
当要求所有状态匹配时,CP:上不同空间中的数据可能并不处于相同时间。
在AP:的不同空间中,如果要求同时从任何空间获得数据,则数据的状态必然不匹配。
CA:不同空间中的数据在任何时间要求可以从任何空间获得状态一致的数据时,空间数目必然为1。
链接: https://www.zhi Hu.com/question/54105974/answer/139037688