小赖子的英国生活和资讯

理解系统设计中的可用性百分比: 计算系统的停机时间(Availability)

阅读 桌面完整版
aws-four-nines-sla 理解系统设计中的可用性百分比: 计算系统的停机时间(Availability) 学习笔记 程序员 系统设计 计算机 面试

亚马逊云AWS的SLA是4个9也就是99.99%在线时间uptime

系统设计面试中,可用性百分比是软件工程师应该熟悉的基本知识。

在系统可靠性领域(System Availability),99.9% 或 99.99% 之类的可用性百分比是关键的基准。但是这些数字究竟意味着什么?它们又如何转化为实际停机时间(Downtime)?以下介绍了如何计算与不同可用性水平相关的停机时间,并使用示例来说明 99.9%、99.99% 和其他可用性目标所带来的预期。

什么是可用性百分比?

可用性百分比表示系统在给定时间段(通常是一年、一月或一天)内预计正常运行的时间比例。例如,99.9% 的可用性意味着系统在指定期间内可以停机 0.1% 的时间。

可用性百分比和停机时间

以下是根据不同时间段的可用性百分比计算停机时间的方法:

  1. 确定总时间周期:选择参考周期:
    • 年:365 天,或 31,536,000 秒(365 天 × 24 小时 × 60 分钟 × 60 秒)
    • 月:30 天,或 2,592,000 秒
    • 日:24 小时,或 86,400 秒
  2. 计算允许的停机时间:使用公式:

    停机时间 = 总时间周期 × (1 – 可用性百分比)

示例:99.9% 可用性的停机时间

99.9% 可用性的年度停机时间

99.9% 可用性的月度停机时间

99.9% 可用性的每日停机时间

更高可用性水平的停机时间

对于具有更高可用性目标的系统,如 99.99% 或 99.999%,允许的停机时间会变得更短。以下是总结不同可用性水平停机时间的表格:

可用性 年度停机时间 月度停机时间 每日停机时间
99.9%(三个 9) 约 8 小时 45 分钟 约 43.2 分钟 约 1.44 分钟
99.99%(四个 9) 约 52.6 分钟 约 4.4 分钟 约 8.6 秒
99.999%(五个 9) 约 5.3 分钟 约 26 秒 约 0.86 秒
99.9999%(六个 9) 约 31.5 秒 约 2.6 秒 约 86 毫秒

高可用性的重要性

具有高可用性目标的系统对于那些停机会直接影响收入、客户满意度或安全的行业至关重要。实现这些目标需要精心设计,包括负载均衡、冗余、故障转移机制,有时还需要资源的地理分布。

总结

可用性百分比提供了表达系统可靠性的一种方便方式,但将其转换为停机时间则可以更清楚地看到面临的风险。使用这些计算来设置现实的可用性目标,并相应地准备您的基础设施。

英文:Understanding Availability Percentages: Calculating Downtime for Your Systems

强烈推荐

微信公众号: 小赖子的英国生活和资讯 JustYYUK

阅读 桌面完整版
Exit mobile version