zoukankan      html  css  js  c++  java
  • CAP定理(theorem)

    一致性(Consistency): 每次读取都会收到最新的写入或错误
    可用性(Availability): 每个请求都会收到 (非错误) 响应, 但不保证它包含最新的写入
    分区容差(Partition tolerance): 尽管节点之间的网络删除 (或延迟) 了任意数量的消息, 但系统仍继续运行
    特别是, cap 定理意味着, 在存在网络分区的情况下, 必须在一致性和可用性之间做出选择。请注意, cap 定理中定义的一致性与 acid 数据库 transactions[4] 中保证的一致性有很大不同。

    说明

    没有分布式系统可以避免网络故障,因此通常必须容忍网络分区。在存在分区的情况下,可以选择一个分区:一致性或可用性。在选择一致性而非可用性时,如果由于网络分区而无法保证特定信息是最新的,则系统将返回错误或超时。在选择可用性而非一致性时,系统将始终处理查询并尝试返回最新的可用信息版本,即使由于网络分区而无法保证其是最新的。

    在没有网络故障的情况下 - 也就是说,当分布式系统正常运行时 - 可以满足可用性和一致性。

    CAP经常被误解,好像必须始终选择放弃三种保证中的一种。实际上,只有在发生网络分区或故障时,才能在一致性和可用性之间进行选择;在所有其他时间,不需要进行任何权衡。

    设计了传统ACID的数据库系统,例如RDBMS选择一致性而非可用性,而围绕BASE理念设计的系统,例如NoSQL运动中常见的,选择可用性而不是一致性。

    PACELC定理以CAP为基础,即使在没有分区的情况下,也会在延迟和一致性之间进行另一次权衡。

    https://en.wikipedia.org/wiki/CAP_theorem

  • 相关阅读:
    定位中方向余弦矩阵(DCM)简介
    前端UI框架小汇总
    前端知识点小结
    overflow兼容iOS
    使用Flexible实现手淘H5页面的终端适配
    获取当前Javascript脚本文件的路径
    Javascript中document.execCommand()的用法 ( 实现浏览器菜单的很多功能 )
    jquery中的map()方法与js中的map()方法
    js判断是否为移动端
    页面制作注意事项
  • 原文地址:https://www.cnblogs.com/kevin1988/p/10488843.html
Copyright © 2011-2022 走看看