当前位置:网站首页>Distributed cap theory
Distributed cap theory
2022-07-04 04:30:00 【InfoQ】
CAP A brief introduction to the theory

CAP Two out of three
Uniformity (Consistency)
: A write operation returns success , Then all subsequent read requests must read this new data ; If the return fails , Then all read operations cannot read this data . All nodes access the same latest data .
Usability (Availability)
: High availability for data updates , Requests can be processed in a timely manner , Not always waiting for , Even if a node fails .
Partition tolerance (Partition tolerance)
: Can tolerate network partition , When the network is disconnected , The separated nodes can still provide services to the outside world .
Yes CAP Theoretical understanding
- If one copy is allowed to update , It will lead to inconsistent data , That is, to lose C nature .
- If in order to ensure consistency , Set the replica on one side of the partition to unavailable , So lost again A nature .
- Unless two copies can communicate with each other , To guarantee C And promise A, This in turn leads to the loss of P nature .
CAP In depth theoretical understanding
- First , Because zoning rarely happens , So there's no reason to sacrifice when there's no partition in the system C or A.
- secondly ,C And A The trade-offs can occur repeatedly in the same system with very small granularity , And every decision may be made because of specific operation , Even because it involves specific data or users .
- Last , All three properties can be measured in degree , It's not black or white with or without . Usability is obviously in 0% To 100% Between successive changes , There are many levels of consistency , Even zoning can be subdivided into different meanings , For example, different parts of the system can have different cognition about whether there is a partition .
边栏推荐
- 资深开发人员告诉你,怎样编写出优秀的代码?
- Senior developers tell you, how to write excellent code?
- 新手找陪驾要注意什么
- Common methods of threads
- Touch your hand and bring you a commonjs specification
- Graduation project: design seckill e-commerce system
- 2021 RSC | Drug–target affinity prediction using graph neural network and contact maps
- Programmers' telecommuting is mixed | community essay solicitation
- 微信脑力比拼答题小程序_支持流量主带最新题库文件
- Exercises in quantum mechanics
猜你喜欢
资深开发人员告诉你,怎样编写出优秀的代码?
Modstartblog modern personal blog system v5.2.0 source code download
什么是上下文?
leetcode刷题:二叉树06(对称二叉树)
Apple CMS imitation watermelon video atmospheric response video template source code
Graduation project: design seckill e-commerce system
Virtual commodity account trading platform source code_ Support personal QR code collection
RHCSA 04 - 进程管理
MySQL JDBC编程
分布式CAP理论
随机推荐
C语言双向链表初版
陪驾注意事项 这23点要注意!
Dry goods | detailed explanation of webshell Foundation
(指針)自己寫一個比較字符串大小的函數,功能與strcmp類似。
【微信小程序】好看的轮播图组件
Graduation project
【云原生】那些看起来很牛X,原理却很简单的一行代码
JS realizes the effect of text scrolling marquee
How to add custom API objects in kubernetes (1)
Pytest basic self-study series (I)
Wechat brain competition answer applet_ Support the flow main belt with the latest question bank file
分布式系统:what、why、how
资深开发人员告诉你,怎样编写出优秀的代码?
I.MX6U-ALPHA开发板(C语言版本LED驱动实验)
How to add custom API objects in kubernetes (1)
Graduation project: design seckill e-commerce system
VIM mapping command
TCP-三次握手和四次挥手简单理解
NFT new opportunity, multimedia NFT aggregation platform okaleido will be launched soon
Unity资源路径