架构师第一期作业(第 6 周)
请简述 CAP 原理
CAP原理是说在一个分布式系统中,不可能同时满足以下三点:
一致性(Consistency)每次读取到的数据都是最新的,而不是过期的旧数据
可用性(Availability)每次请求都能得到响应,但不需要保证数据是最新的
分区耐受性(Partition tolerance)系统可靠性,即使因为网络原因,部分节点之间消息丢失或延迟,系统依然是可操作的
CAP原理对设计可伸缩的分布式系统具有重要的意义,认识到CAP不可能同时满足,可以在设计时避免不恰当地纳入各种需求,企图打造一个完美产品,最终造成进退两难的境地。
实际使用中,P(分区耐受性,可靠性)通常是不能丢的,在剩下的C(一致性)和A(可用性)中,根据业务场景满足其中一项,最后的一项选择放弃。比如银行业务,对一致性要求比较高,可以牺牲部分可用性;互联网业务则大多对可用性要求较高,可以部分放弃一致性,做到数据最终一致就可以了。
版权声明: 本文为 InfoQ 作者【Cheer】的原创文章。
原文链接:【http://xie.infoq.cn/article/4ad86415440c9749e336c057b】。未经作者许可,禁止转载。
评论