架构训练营第六周 - 作业

发布于: 2020 年 07 月 11 日
架构训练营第六周 - 作业

作业

  • 请简述 CAP 原理。

  • 针对 Doris 案例,请用 UML 时序图描述 Doris 临时失效的处理过程(包括判断系统进入临时失效状态,临时失效中的读写过程,失效恢复过程)。

CAP

  • Consistency

  • Availability

  • Partition tolerance

Consistency 一致性:每次读取,都是最近写入的数据或者将返回一个错误,而不是一个过期的数据。(Every read receives the most recent write or an error).

Availability 可用性,每次请求都能得到一个响应,而不是返回一个错误或者失去响应。不需要保证数据是最新的。(Every request receive a(non-error) response,without the guarantee that it contains the most recent write)

Partition tolerance 分区耐受性,即使因为网络原因,部分服务器节点之间消息丢失或者延迟了,系统依然应该是可以操作的。(The system continues to operate despite an arbitrary number of messages being dropped (or delayed) by the network between nodes)

在现实中,受制于物理条件等因素影响,网络分区必定会发生。

在分布式系统中,在必须要满足分区耐受性的情况下,可用性和一致性,无法同时满足,即只能有:CP、AP。

满足AP的框架:

  • Eureka集群服务中心

  • Redis Cluster

  • Mysql 集群

  • HBase

  • Caasandra

满足CP的框架

  • Zookeeper

BASE,是基于CAP 发展起来的,是对现实的妥协。

Basic Availability 基本可用

Soft State 软状态,允许服务出现中间状态

Evaentually Consistency 最终一致。利用异步等手段,来达到数据等最终一致。

Dorix

临时失效

临时失效

失效期间,时序图

临时失效恢复

失效恢复

失效恢复时序图

发布于: 2020 年 07 月 11 日 阅读数: 22
用户头像

无心水

关注

路漫漫其修远兮 2018.08.16 加入

熟悉Java,略懂Python

评论

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