什么是高可用?可用性的判断标准是啥?

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top

全网最细面试题手册,支持艾宾浩斯记忆法。这是一份最全面、最详细、最高质量的 java面试题,不建议你死记硬背,只要每天复习一遍,有个大概印象就行了。 https://store.amazingmemo.com/chapterDetail/1685324709017001`

高可用 (High Availability)

高可用是关于系统设计和运行的一个指标,旨在确保一个系统可以在规定的时间内以预定性能连续不断地工作。它通常与系统的稳定性和可靠性关联,被视作系统设计中的关键目标。高可用的系统能够在面对故障或维护操作时,最小化停机时间,并且能自动地在出错之后迅速恢复。

可用性的判断标准

可用性通常使用以下标准来衡量:

  1. Uptime(正常运行时间): 系统正常运行并可执行其预定功能的时间。

  2. Downtime(停机时间): 系统由于任何原因无法正常运行的时间。

  3. Redundancy(冗余): 系统设计中包含备用或冗余组件来防止单点故障。

  4. Failover(故障转移): 在主系统出现故障时,系统能否自动切换到备用系统,以保持服务的连续性。

  5. Recovery Time Objective (RTO): 在发生故障后,系统恢复到正常工作状态所需的时间。

  6. Recovery Point Objective (RPO): 在发生故障后,数据恢复到的最后一个备份的时间点。

通常,可用性以百分比的形式表示,计算公式为:

[ \text{可用性} (%) = \left(\frac{\text{正常运行时间}}{\text{正常运行时间} + \text{停机时间}}\right) \times 100 ]

比如,系统设计目标是“五个九”(99.999%)的可用性,这意味着系统的年停机时间不超过5.26分钟。

在软件工程中,为了实现高可用,工程师需要采用多种技术和策略,如分布式系统设计、负载均衡、数据复制和同步,以及定期维护和测试系统的恢复程序。

最后更新于