前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Distributed 01 - CAP

Distributed 01 - CAP

作者头像
Reck Zhang
发布2021-08-11 12:02:17
2460
发布2021-08-11 12:02:17
举报
文章被收录于专栏:Reck Zhang

CAP

分布式系统不可能同时满足一致性(C:Consistency), 可用性(A:Availability), 分区容忍性(Partion Tolerance), 最多只能同时满足其中两项.

一致性

一致性是指多个数据副本是否能保持一致的特性.

在一致性的条件下, 系统在执行数据更新操作之后能从一致性状态转移到另一个一致性状态.

对系统的一个数据更新成功之后, 如果所有用户都能够读取到最新的值, 该系统就被认为具有强一致性.

可用性

可用性指分布式系统在面对各种异常时可以提供正常服务的能力, 可以用系统可用时间占总时间的比值来衡量, 4个9的可用性表示系统99.99%的时间是可用的.

在可用性条件下, 要求系统提供的服务一直处于可用状态, 对于用户的每一个操作请求总是能够在有限时间内返回结果.

分区容忍性

网络分区指分布式系统中的节点被划分为多个区域, 每个区域内部可以通信, 但是区域之间无法通信.

在分区容忍性条件下, 分布式系统在遇到任何网络分区故障的时候, 仍然需要能够对外提供一致性和可用性的服务, 除非是整个网络环境都发生故障.

权衡

在分布式系统中, 分区容忍性必不可少, 因为需要总是假设网络是不可靠的. 因此CAP理论实际上是对可用性和一致性之间进行权衡.

可用性和一致性往往是冲突都, 很难使他们同时被满足. 在多个节点之间进行数据同步时:

  1. 为了保证一致性(CP), 需要让所有节点下线成为不可用的状态, 等待同步完成.
  2. 为了保证可用性(AP), 在同步过程中允许读取所有节点的数据, 但是数据可能不一致.
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-08-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • CAP
    • 一致性
      • 可用性
        • 分区容忍性
          • 权衡
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档