简述 CAP 原理
思考:什么 CAP 原理?
首先,需要理解可用性、一致性、分区容错性,然后,进一步理解什么是 CAP 原理。
一、一致性
一致性,英文名称 Consistency,表达的是进行数据读取操作,获取到的数据只能是最近的,或者返回错误。也就是说,数据在整个系统流转过程中,都是一致的,不会出现数据不一样的情况。
比如 A 和 B 去读取商品 Z,A 和 B 读取到的商品 Z 的价格都是一样的,不会出现 A 读取的价格高,B 读取的价格低的情况。
二、可用性
可用性,英文名称 Availibility,意思是说,系统针对用户请求,每次请求都是能够得到响应的,而不是返回错误或者不能响应,正因为此,无法保证每次请求的数据都是最新的。
通俗理解,就是系统一直运行良好,随时随地都能够使用。
三、分区容错性
分区容错性,英文名称 Partition Tolerance,基于网路原因,部分服务器的数据丢失或者延时,系统依然是可用的。
四、CAP 原理
由于在整个互联网环境下,因为网路原因,请求服务器的数据丢失或者延时的情况一定会发生。因此,要么直接返回错误,结束操作,保证数据的一致性,此时,则表示系统不可用。要么,继续进行处理,此时无法保证处理的数据是最新的。
简而言之,为了保证分区容错性,对于系统的一致性和可用性,两者只能二选一。
评论