浅谈分布式系统开发技术中的CAP定理

1、定义

CAP定理(CAPtheorem),又被称作布鲁尔定理(Eric Brewer) , 1998年第一次提出。

[图片上传失败...(image-19010f-1656236389044)]

最初提出是指分布式数据存储不可能同时提供以下三种保证中的两种以上:

一致性(Consistency):每次读取收到的信息是最新的。
可用性(Availability):每个请求都会收到(非错误)响应。
分区容错(Partition tolerance):尽管节点之间的网络不通导致分区,系统仍继续运行。

2、CAB定理实践

2.1 CP强一致性

[图片上传失败...(image-d57ed1-1656236389044)]
定义

实现一致性和分区容错性,此组合为数据强一致性模式,即要求多服务之间数据一定要一致,牺牲了可用性。在一些对数据一致性要求高的场景进行使用,比如跟钱相关的。

实现强一致性的中间件有zookeeper。

2.2 AP高可用性

[图片上传失败...(image-857972-1656236389044)]
定义

满足可用性性和分区容错性,通常对数据一致性要求不高。在出现故障的情况下,只要不是所有节点都挂掉,那么集群还是可以正常工作。

实现高可用性的中间件有Eureka,在spring cloud中作为注册中心经常出现。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容