容错、高可用、灾备

阮一峰的博文(容错,高可用和灾备)中说:

  • 容错:发生故障时,如何让系统继续运行。
    飞机的四个引擎坏了一个还能继续飞行,汽车的四个轮子坏了一个也能将就驾驶。
  • 高可用:系统中断时,如何尽快恢复。
    汽车的备胎,用于快速恢复正常驾驶(允许短暂的业务中断)。
  • 灾备:系统毁灭时,如何抢救数据。
    飞机的弹射装置,保证最核心的“资产” —— 驾驶员能够存活。

容错 fault-tolerant

使系统在部分组件(一个或多个)发生故障时仍能正常运作的能力。
如果系统的运行质量全面降低,降低的幅度与故障程度成正比,相反的,设计时未考虑故障容许度的系统,在发生很小的故障时也可能完全故障。
高可用性或生命攸关系统中尤为追求容错。系统部分故障时,维护功能的能力也称为柔性降级或从容退化(graceful degradation)。
故障容许与极少故障的系统是不同概念。例如,西部电气交叉开关系统的失效率为每四十年两小时,因此具有高度的防故障能力。但当故障发生时,它们将完全停止运行,因此并无故障容许。

高可用 high availability

指系统无中断地执行其功能的能力,代表系统的可用性程度。
高可用性通常通过提高系统的容错能力来实现。
其度量方式,是根据系统损害、无法使用的时间,以及由无法运作恢复到可运作状况的时间,与系统总运作时间的比较。计算公式为:

A(可用性),MTBF(平均故障间隔),MDT(平均修复时间)

在线系统和执行关键任务的系统通常要求其可用性要达到5个9标准(99.999%)。

可用性 年故障时间
99.9999% 32秒
99.999% 5分15秒
99.99% 52分34秒
99.9% 8小时46分
99% 3天15小时36分

灾备 disaster recovery

灾难恢复(Disaster recovery,也称灾备),指自然或人为灾害后,重新启用信息系统的数据、硬件及软体设备,恢复正常商业运作的过程。灾难恢复规划是涵盖面更广的业务连续规划的一部分,其核心即对企业或机构的灾难性风险做出评估、防范,特别是对关键性业务数据、流程予以及时记录、备份、保护。

  • 故障切换(switchover):将业务从故障环境(硬件,软件,网络)迁移到冗余或者备份环境。
  • 故障转移(failover):自动地故障切换,无需人工干预。
  • 故障恢复(failback):将故障环境恢复正常。