浅谈分布式系统开发技术中的CAP定理
1、定义
CAP定理(CAPtheorem),又被称作布鲁尔定理(Eric Brewer) , 1998年第一次提出。
最初提出是指分布式数据存储不可能同时提供以下三种保证中的两种以上:
一致性(Consistency):每次读取收到的信息是最新的。
可用性(Availability):每个请求都会收到(非错误)响应。
分区容错(Partition tolerance):尽管节点之间的网络不通导致分区,系统仍继续运行。
2、CAB定理实践
2.1 CP强一致性
定义
实现一致性和分区容错性,此组合为数据强一致性模式,即要求多服务之间数据一定要一致,牺牲了可用性。在一些对数据一致性要求高的场景进行使用,比如跟钱相关的。
实现强一致性的中间件有zookeeper。
2.2 AP高可用性
定义
满足可用性性和分区容错性,通常对数据一致性要求不高。在出现故障的情况下,只要不是所有节点都挂掉,那么集群还是可以正常工作。
实现高可用性的中间件有Eureka,在spring cloud中作为注册中心经常出现。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通