写点什么

架构训练营第六周 - 作业

用户头像
无心水
关注
发布于: 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 日阅读数: 52
用户头像

无心水

关注

路漫漫其修远兮 2018.08.16 加入

熟悉Java,略懂Python

评论

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