2023-12-12 11:36:38 14阅读
根据百度百科词条定义,高可用性(HA,High Availability)通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。可用性(也称有效性)的量化参数为可用度, 表示系统在规定的条件下使用时,在某时刻具有或维持其功能的概率。可用度(也称有效度) 通常记作A,可用平均无故障时间(MTBF)和平均修复时间(MTTR)来计算:A = MTBF/(MTBF + MTTR)。
在实际业务中,一般采用SLA(Service Level Agreement)来描述系统的高可用等级,也就是常说的“几个9”的可用性,通常用周期内系统不可用的时间来衡量:
系统可用性 |
宕机时间/年 |
宕机时间/月 |
宕机时间/周 |
宕机时间/天 |
90% (1个9) |
36.5 天 |
72 小时 |
16.8 小时 |
2.4 小时 |
99% (2个9) |
3.65 天 |
7.20 小时 |
1.68 小时 |
14.4 分 |
99.9% (3个9) |
8.76 小时 |
43.8 分 |
10.1 分钟 |
1.44 分 |
99.99% (4个9) |
52.56 分 |
4.38 分 |
1.01 分钟 |
8.66 秒 |
99.999% (5个9) |
5.26 分 |
25.9 秒 |
6.05 秒 |
0.87 秒 |
从前面的概念可以看到,描述高可用性不是空泛地指系统永远在线,而是可量化的处置时长,包含故障发现、故障处理和故障恢复,一般需要做如下几点设计:
冗余最大的难点是对节点数据复制和数据一致性的保障,在系统性能(吞吐量、响应时长)和数据完整(RPO)间取得平衡:
可以用数据一致性模型来描述冗余的效果,主要有三种类型:
从实现上看,弱一致性和最终一致性是异步冗余的,强一致性一般是同步冗余的。异步通常代表更好的性能,但数据接管需要更复杂的状态控制;同步的接管相对简单,但冗余的流程协调却更复杂。
[图片来源:Transaction Across DataCenter]
数据冗余在技术上表现为跨数据中心事务的处理,常见的解决方案如上图所示,包括数据迁移(Backups)、数据复制(M/S、M/M)和分布式事务(2PC、Paxos)三种类型。其中数据迁移中的Backups(备份)是离线方案,不具备高可用恢复(Failover)的特性,简单介绍其他方案:
分布式领域有著名的CAP理论:在一个分布式系统中,Consistency(一致性)、Availability(可用性)和Partition Tolerance(分区容错性)三者不能同时成立。这种基于权衡的设计指导思想,从图中没有一种各项全绿的方案,也足以管中窥豹。
2023-12-12 11:36:38 14阅读
根据百度百科词条定义,高可用性(HA,High Availability)通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。可用性(也称有效性)的量化参数为可用度, 表示系统在规定的条件下使用时,在某时刻具有或维持其功能的概率。可用度(也称有效度) 通常记作A,可用平均无故障时间(MTBF)和平均修复时间(MTTR)来计算:A = MTBF/(MTBF + MTTR)。
在实际业务中,一般采用SLA(Service Level Agreement)来描述系统的高可用等级,也就是常说的“几个9”的可用性,通常用周期内系统不可用的时间来衡量:
系统可用性 |
宕机时间/年 |
宕机时间/月 |
宕机时间/周 |
宕机时间/天 |
90% (1个9) |
36.5 天 |
72 小时 |
16.8 小时 |
2.4 小时 |
99% (2个9) |
3.65 天 |
7.20 小时 |
1.68 小时 |
14.4 分 |
99.9% (3个9) |
8.76 小时 |
43.8 分 |
10.1 分钟 |
1.44 分 |
99.99% (4个9) |
52.56 分 |
4.38 分 |
1.01 分钟 |
8.66 秒 |
99.999% (5个9) |
5.26 分 |
25.9 秒 |
6.05 秒 |
0.87 秒 |
从前面的概念可以看到,描述高可用性不是空泛地指系统永远在线,而是可量化的处置时长,包含故障发现、故障处理和故障恢复,一般需要做如下几点设计:
冗余最大的难点是对节点数据复制和数据一致性的保障,在系统性能(吞吐量、响应时长)和数据完整(RPO)间取得平衡:
可以用数据一致性模型来描述冗余的效果,主要有三种类型:
从实现上看,弱一致性和最终一致性是异步冗余的,强一致性一般是同步冗余的。异步通常代表更好的性能,但数据接管需要更复杂的状态控制;同步的接管相对简单,但冗余的流程协调却更复杂。
[图片来源:Transaction Across DataCenter]
数据冗余在技术上表现为跨数据中心事务的处理,常见的解决方案如上图所示,包括数据迁移(Backups)、数据复制(M/S、M/M)和分布式事务(2PC、Paxos)三种类型。其中数据迁移中的Backups(备份)是离线方案,不具备高可用恢复(Failover)的特性,简单介绍其他方案:
分布式领域有著名的CAP理论:在一个分布式系统中,Consistency(一致性)、Availability(可用性)和Partition Tolerance(分区容错性)三者不能同时成立。这种基于权衡的设计指导思想,从图中没有一种各项全绿的方案,也足以管中窥豹。