架构师训练营第 1 期 - 第六周作业提交
请简述 CAP 原理。
针对 Doris 案例,请用 UML 时序图描述 Doris 临时失效的处理过程(包括判断系统进入临时失效状态,临时失效中的读写过程,失效恢复过程)。
参考《海量分布式存储系统 Doris 的高可用架构设计分析.pdf》
请简述 CAP 原理。
CAP是设计分布式系统所必须考虑的架构问题.
首先是CAP的含义:
Consistency: 一致性指的是所有节点都能在同一时间返回同一份最新的数据副本,或者返回错误 (准确)
Availability: 可用性指的是每次请求都能够返回正确的,快速的响应(高性能)
Partition tolerance: 分区容错性指的是服务器间的通信即使在一定时间内无法保持畅通系统的数据也不会丢失.(完全可靠)
以上三点,无法同时满足,只能满足其中两点,这个就是CAP定理
因为是分布式系统,所以系统运行在多个网络,而分布式系统的目的之一就有高可用,而如果分区容错性无法达成的话,其实分布式意义不大.所以一把情况下,我们认为P是一直成立的.
那么剩下的 C 一致性和A 可用性 我们就只能选其中之一.
为什么会冲突呢?
因为在保证P的情况下, 一旦系统服务器之间出现无法通信的情况,又要保证系统整体可用,就意味系统可能会出现了不一致,那么为了数据一致,要么失去一致性,让多端接受返回了不一致的数据; 要么必须强一致,一端写入,其他端暂停写入和读取,就失去了可用性.
请用 UML 时序图描述 Doris 临时失效的处理过程(包括判断系统进入临时失效状态,临时失效中的读写过程,失效恢复过程)。
临时失效包括三个过程:
判断系统进入临时失效状态 , 临时故障期间,临时故障恢复期间
评论