不同系统架构下的容错方案
- 单体系统集中式
硬件冗余、模块化、可插拔、透明切换 - 分布式系统
一般利用软件容错
复制和冗余
需要共识算法
容错架构
-
应用容错架构
数据库同步(互联网系统微服务架构)
内存状态同步 -
复制架构
主从复制(复制的是计算的结果)、状态机复制(复制的是操作)
共识算法是容错系统的核心,但共识算法不是万能的,前提是采用哪种故障模型。
故障类型
系统模型
- 同步模型
全部时钟、进程的每一步操作都存在时间上限、消息传输具有上限 - 异步模型
时钟不同步、进程以不同的速率运行、消息传输可以被任意延迟
后续主要针对异步模型研究、分布式系统主要是异步模型
故障检测
每个故障的进程都能被发现
不会误判(异步模型比较难实现)
一致性
- 强一致性
线性一致、
顺序一致(主要研究顺序一致) - 弱一致性
共识算法
原理和架构
逻辑时钟,实现了偏序 Partial Order 50:00,通过引入进程间优先级可以得到Total Order。
- Paxos
Proposer - 给出提案
Acceptor - 对提案偷票
Learner - 获取提案的决议
网友评论