区别介绍
- 这张图来自尚硅谷周阳老师的课堂笔记
- 以上区别中最最影响技术选择的就是CAP了
CAP理论简单介绍
-
什么是CAP理论:2000年PODC大会时Brewer大佬提出的,他认为在设计一个大规模的分布式架构时会遇到三个特性:一致性(consistency)、可用性(Availability)、分区容错(partition-tolerance)然而这三种特性不可能全部满足。
-
CAP理论核心: 一个分布式系统不可能同时满足一致性、可用性和分区容错性这三个需求最多只能满足两个,因此根据理论可分为:CA、CP、AP
-
CA组合:单点集群,满足一致性和可用性,但是在可扩展性上不太令人满意,如My Sql和Oracle就是保证了可用性和数据一致性
-
CP组合:满足了一致性和分区容错性,但通常性能不高,如Zookeeper、Consul,常应用于对数据一致性高的需求
-
AP组合:满足了可用性和分区容错性,通常应用于对数据一致性低的需求,例如某个商品的浏览数、点赞数和转发数量不要求立马同步但求系统不会挂掉。