CAP是什么意思
1. 其中C是一致性
是指在分布式系统中的所有数据备份,在同一时刻都是同样的,即客户端访问任意节点,都是最新的数据。在redis的主从关系中,主节点保存了数据,直接就返回给客户端了,并没有保证从节点都是最新的数据。客户端访问别的节点可能会发生master上已经有了数据,但从节点没有数据,就是出现了数据不一致现象。
2. 其中A是可用性
是指在分布式系统中,任何一个请求,只要向节点发起了请求,就需要获得响应。
3. 其中P是分区容错性
是指在主从部署的情况下,节点会部署在不同的子网络下,不同的子网络就是一个分区,分区容错就是不同分区之间可能会通信失败。比如一台服务器放在中国,另一台服务器放在美国,这就是两个分区,可能会不能通信。
为什么C和P只能保证一个呢?
就是因为会出现分区通信失败。如果要保证一致性,在一个节点上的数据必须发给其他备份节点(可能在不同的分区),那么这时候其他的访问就被锁在请求外面。这时候就不是完全可用的。
而可用性,就是可以不保证数据必须备份到其他节点上,新来的请求也可以立马获得处理。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2018-03-15 java动态规划取硬币问题