写点什么

架构师训练营 第六周 作业

用户头像
CR
关注
发布于: 2020 年 07 月 15 日
  • 请简述 CAP 原理。



CAP分别指:

  • 一致性(Consistency):每次读取的数据都应该是最近写入的数据或返回一个错误,而不是过期数据。

  • 可用性(Availability):每次请求都应该得到一个响应,而不是返回一个错误或失去响应,不过这个响应不需要保证数据是最近写入的,即系统需要一直都是可以正常使用的,不会引起调用者的异常,但是不保证响应的数据是最新的。

  • 分区耐受性(Partition tolerance):因为网络原因,部分服务器节点之间消息丢失或者延迟,系统仍然可以操作。



CAP原理是说在分布式系统必须要满足分区耐受性(P)的前提下,可用性(A)和一致性(C)无法同时满足,原因是:

  • 当发生网络分区时,如果不再更新数据,那么数据就是一致的,但是系统不可用;如果继续写入数据,则数据的一致性无法得到保证

  • 对于一个分布式系统,网络失效一定会发生,也就是说分区耐受性必须要保证,则可用性和一致性就必须二选一

  • 当发生网络分区时,如果选择一致性,那么系统可能返回错误或者超时,系统不可用;如果选择可用性,那么系统总是可以返回数据,但是不能保证返回的数据是最新的。



用户头像

CR

关注

还未添加个人签名 2018.09.23 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营 第六周 作业