写点什么

架构师训练营 - 第六周

用户头像
石子头
关注
发布于: 2021 年 01 月 11 日

作业一(至少完成一项):

  1. 请简述 CAP 原理。


C:Consistency (一致性):每次读取时不会返回过期的数据。这句话是说一个请求,如果做不到返回最新数据,就该返回错误(告知服务不可用,它无法返回期望结果)。



A:Availability (可用性):每次请求应该得到响应数据,不应返回错误。即请求不可引起调用者的异常,但也不保证返回的数据是最新的。从这里看,可用性与一致性是冲突的,实际是二选一。



P:Partiton tolerance(分区耐受性): 首先理解,不同的节点靠通信同步数据的变动。节点间的通信在实际使用过程中是必然发生故障的。而分区耐受性就是指当部分节点间的通信故障时,系统依然是可以操作的。对于一个分布式系统,局部的故障不能影响整体,至少保证可以操作。换句话说,分区耐受性,不是一个选择项,而是默认需要得到保证的。



从以上简述来看,CAP 原理就是说:对于分布式系统,在保障分区耐受性的前提下,一致性与可用性无法同时满足。


作业二:根据当周学习情况,完成一篇学习总结


数据分片

  • 分片目标

  • 分片特点

  • 分片原理



1、硬编码实现数据分片

2、映射表外部存储

3、分布式数据库的中间件(解决方案):Mycat



Amoeba/Cobar 架构

Cobar 系统组件模型

如何做集群的伸缩



数据库部署方案

  • 单一服务与单一数据库

  • 主从复制实现伸缩

  • 两个 Web 服务及两个数据库

  • 综合部署



NoSQL

CAP 原理(一致性,可用性,分区耐受性)

在分布式系统必须要满足分区耐受性的前提下,可用性和一致性无法同时满足。



最终一致性

最终一致写冲突:

  • 根据时间戳,最后写入的覆盖之前的

  • 客户端冲突解决方案

  • 投票解决冲突(Cassandra)



ACID 与 BASE

ACID

  • 原子性

  • 隔离性

  • 持久性

  • 一致性



BASE

  • 基本可用

  • 弱状态

  • 最终一致性



Zookeeper 与 Doris


用户头像

石子头

关注

还未添加个人签名 2018.03.16 加入

还未添加个人简介

评论

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