系统稼动率是,设计系统时一个重要指标。系统稼动率也是于客户签订 SLA 当中的一个重要因素。那么如何计算系统稼动率呢?

服务提供商通常提供 SLA 如下,”停机时间 (月)”是”30 天/月”为标准计算。

SLA停机时间 (月)停机时间 (年)
95%36 小时18.3 天
99%7.2 小时3.7 天
99.5%3.6 小时1.8 天
99.7%2.2 小时1.1 天
99.9%43.2 分8.8 小时
99.95%21.6 分4.4 小时
99.99%4.3 分52.6 分
99.999%25.9 秒5.3 分

关于 SLA 及违反 SLA 时的定义,应查看服务提供商合同条约。

系统稼动率

系统稼动率是指,系统正常提供服务百分比,稼动率越接近 100%,表示系统正常提供服务时间越长,既”系统的可靠性越高”。

稼动率计算方法如下。

稼动率 = MTBF(MeanTimeBetweenFailure) / (MTBF(MeanTimeBetweenFailure) + MTTR(MeanTimeToRepair))

上图的系统稼动时间是 “正常稼动 100 小时” -> “故障修复 4 小时” -> “正常稼动 60 小时” -> “故障修复 2 小时” -> “正常稼动 80 小时” -> “故障修复 26 小时”。

MTBF 的计算方法

MTBF(平均故障间隔时间) 是,系统连续运行平均时间,计算方法如下。

MTBF = 总稼动时间 / 故障次数

上图的 总稼动时间 和 故障次数 如下

  • 总稼动时间:100 小时 + 60 小时 + 80 小时 = 240 小时
  • 故障次数:3 次

使用上面方法计算话,240 小时 (总稼动时间)/3 次 (故障次数) = 80 小时 (MTBF)

MTTR 的计算方法

MTTR(平均修复时间) 是,修复所花平均时间,计算方式如下。

MTTR = 总修复时间 / 故障次数

上图的 总修复时间 和 故障次数 如下

  • 总修复时间:4 小时 + 2 小时 + 6 小时 = 12 小时
  • 故障次数:3 次

使用上面方法计算话,12 小时 (总修复时间)/3 次 (故障次数) = 4 小时 (MTTR)

计算稼动率

稼动率使用下面方法计算,使用在上面计算 MTBF 和 MTTR 计算的话,稼动率是 95% = 80 小时 / (80 小时 + 4 小时)。

MTBF(MeanTimeBetweenFailure) / (MTBF(MeanTimeBetweenFailure) + MTTR(MeanTimeToRepair))

串联系统稼动率

系统可能由多个系统组成,例如下图是有由2 个系统串联组成系统

当其中一个系统发生故障时,可能导致整个系统服务停止。

串联系统特点是,当其中一个系统发生故障时,整个系统将无法正常提供服务

串联系统稼动率可使用以下计算方法。

串联系统稼动率 = 系统 A 的稼动率 x 系统 B 的稼动率

例如,系统 A 的稼动率为 0.8,系统 B 的稼动率为 0.9 时,该串联系统稼动率为 0.8 x 0.9 = 0.72

并连系统稼动率

接下来确认一下,并联系统场景。并联系统特点是当并联系统中一个系统停止话,剩下的另一个系统持续提供服务。除非 2 个系统同时发生故障以外,该系统将持续提供服务。

并联系统稼动率计算方法如下。

并联系统稼动率 = 1 – (系统 A 的故障率 x 系统 B 的故障率)

例如,将系统稼动率为 0.8 系统 A 和系统稼动率为 0.9 的系统 B 进行并联时

  • 系统 A 的故障率为 1 – 0.8 = 0.2
  • 系统 B 的故障率为 1 – 0.9 = 0.1

系统的故障率为 0.1 x 0.2 = 0.02

该并连系统稼动率为 1 – 0.02 = 0.98(98%)

种下你的想法

在花园里留下一条评论,和这篇文章一起生长。

COMMENTS