我读过wiki,我理解解释一致性可用性和分区公差的句子,但掌握cap/brewer定理就像抓鱼一样。
我相信有更好的直观方式解释和理解CAP定理。
有什么好消息吗?
{
在有人认为作为普通英语解释形成的问题是非结构化的之前,这里有一个所有其他伟大的普通英语解释问题的列表。
What is a plain English explanation of "Big O" notation?
Ukkonen's suffix tree algorithm in plain English?
What is SOA "in plain english"?
Can you explain what "git reset" does in plain english?
}
最佳答案
在我看来
cap定理的缩写是:
一致性:毫不延迟地查看最新数据
可用性:系统应响应每个请求
分区:意味着将数据分布在不同的位置。
cap定理说你不能达到其中的3个。你应该坚持两个牺牲一个!
让我们看看原因!
1-如果您需要一致性和可用性。您应该忘记分区,因为在分区时有一个很小的机会窗口,节点落后于最近的数据。
2-如果可用性和分区是目标,那么您必须支付1中所述的一致性成本。
3-最后,如果您选择分区和一致性,您应该牺牲可用性来处理不同节点的延迟以获得最新数据。
关于这个定理中的不同数据库供应商,请参见下图。
图片来自http://www.abramsimon.com
关于database - CAP定理还是简明的布鲁尔定理?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22928641/