博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分布式系统的CAP理论
阅读量:4227 次
发布时间:2019-05-26

本文共 564 字,大约阅读时间需要 1 分钟。

C: Consistent 数据一致性

A:  Availability 集群可用性

P:  Network Partition 允许网络分区故障

CAP同时只能保证两个,而且实际中P是必须满足的,因为我们做不到分布式系统节点之间网络永远不出故障,所以实际的分布式系统一般是满足CP或者CA两个。

比如以一个分布式数据库系统为例,有三个节点保存同样的数据。一个客户端连到第一个节点,插入一条数据,由于网络故障,这条数据只同步到第二个数据库节点,第三个节点由于网络故障没有同步成功。这时,如果我们的系统如果满足CP,那这时客户端在第一个节点的插入数据操作就失败,因为数据库节点之间同步失败,这样就满足的数据一致性,但是为什么说满足了一致性,就不能满足可用性呢?因为这个数据最终没有提交成功,所以这个数据不可用,所以不满足可用性。但是之前已经在三个节点同步成功的数据对客户端还是可用的。所以Availability可用性具体指的是新提交的数据在集群上的可用性

而对于满足AP的系统,就允许集群节点之间的数据不一致性,但是保证了集群的可用性。

分布式系统中实现一致性的raft 算法、paxos。关于raft算法如何实现数据一致性,可以参考下边连接的动画演示。

http://thesecretlivesofdata.com/raft/

转载地址:http://lkcqi.baihongyu.com/

你可能感兴趣的文章
介绍Linux下经典的文件传输工具: lrzsz
查看>>
活用AXD Debugger调试器的命令行,实现u-boot的源代码级调试
查看>>
程序员的一份礼物-常用工具集
查看>>
uClinux 启动过程详细分析
查看>>
嵌入式系统 Boot Loader 技术内幕
查看>>
通信协议的一些技巧
查看>>
链接命令文件(*.cmd)和gel文件的介绍
查看>>
DSP一点知识总结
查看>>
DSP_c与汇编混合编程的一点总结
查看>>
CamelCase写法
查看>>
高效人士的七个习惯
查看>>
高效人士的七个习惯--每章概括
查看>>
移植U-Boot.1.3.1到S3C244和S3C2410
查看>>
移植u-boot-1.3.4到S3C2440
查看>>
硬件工程师基础知识
查看>>
结构体知识汇总
查看>>
软件开发管理工具
查看>>
初学配置管理
查看>>
了解端口
查看>>
关闭端口
查看>>