当前位置:网站首页>Distributed cap theory
Distributed cap theory
2022-07-04 06:05:00 【Zhan sir (open source byte)】
CAP The theory is distributed system 、 In particular, the most discussed theory in the field of distributed storage . among C For consistency (Consistency),A For usability (Availability),P Represents partition fault tolerance (Partition tolerance).CAP Theory tells us C、A、P The three cannot be satisfied at the same time , Only two of them can be satisfied at most .
CAP A brief introduction to the theory
CAP The theory is distributed system 、 In particular, the most discussed theory in the field of distributed storage . among C For consistency (Consistency),A For usability (Availability),P Represents partition fault tolerance (Partition tolerance).CAP Theory tells us C、A、P The three cannot be satisfied at the same time , Only two of them can be satisfied at most .
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
understand CAP The simplest theory is to imagine two replicas on either side of the partition , That is, the network between the two replicas is disconnected , Can't communicate .
- 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 .
Generally speaking, distributed systems using network communication , Can't give up P nature , Then we can only make a difficult choice in terms of consistency and availability .
CAP The expression of theory serves its purpose well , It broadens the thinking of distributed system designers , Design a variety of systems under a variety of alternatives . There have been countless new systems in the past decade , As a result, there have been quite a number of debates on the relative relationship between consistency and usability .
CAP In depth theoretical understanding
stay CAP Twelve years after the theory was put forward , The author came out to refute the rumor .“ Two out of three ” There has always been a misleading formula , It oversimplifies the relationship between properties :
- 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 .
So consistency and usability are not incompatible , Either this or that .Paxos、Raft The equally distributed consistency algorithm is the witness of a good balance between consistency and availability .
If you reprint , Please indicate the source : Open source byte https://sourcebyte.cn/article/176.html
边栏推荐
- lightroom 导入图片灰色/黑色矩形 多显示器
- Canoe panel learning video
- Sword finger offer II 038 Daily temperature
- 19. Framebuffer application programming
- AWT introduction
- Thinkphp6.0 middleware with limited access frequency think throttle
- JSON Web Token----JWT和传统session登录认证对比
- [excel] PivotChart
- Detectron: train your own data set -- convert your own data format to coco format
- 如何避免 JVM 内存泄漏?
猜你喜欢
注释与注解
After the festival, a large number of people change careers. Is it still time to be 30? Listen to the experience of the past people
How to get the parent node of all nodes in El tree
High performance parallel programming and optimization | lesson 02 homework at home
BeanFactoryPostProcessor 与 BeanPostProcessor 相关子类概述
如何展开Collapse 的所有折叠面板
JS扁平化数形结构的数组
js如何将秒转换成时分秒显示
APScheduler如何设置任务不并发(即第一个任务执行完再执行下一个)?
ES6 modularization
随机推荐
2022.7.2-----leetcode. eight hundred and seventy-one
Detectron:训练自己的数据集——将自己的数据格式转换成COCO格式
剑指 Offer II 038. 每日温度
FRP intranet penetration, reverse proxy
我的NVIDIA开发者之旅——优化显卡性能
How to determine whether an array contains an element
How to solve the component conflicts caused by scrollbars in GridView
The end of the Internet is rural revitalization
Review | categories and mechanisms of action of covid-19 neutralizing antibodies and small molecule drugs
198. House raiding
接地继电器DD-1/60
How to clone objects
JSON web token -- comparison between JWT and traditional session login authentication
一键过滤选择百度网盘文件
Detailed explanation of common APIs for component and container containers: frame, panel, scrollpane
Accidentally deleted the data file of Clickhouse, can it be restored?
High performance parallel programming and optimization | lesson 02 homework at home
C language - Blue Bridge Cup - Snake filling
Overview of relevant subclasses of beanfactorypostprocessor and beanpostprocessor
体验碎周报第 102 期(2022.7.4)