系统稼动率是,设计系统时的一个非常重要的指标。系统稼动率也是于客户签订SLA当中的一个重要因素。那么如何计算系统稼动率呢?
系统稼动率
系统稼动率是指,系统正常提供服务的百分比,稼动率越接近100%,表示系统正常提供服务的时间越长,既”系统的可靠性越高”。
稼动率的计算方法如下。
稼动率 = MTBF(MeanTimeBetweenFailure) / (MTBF(MeanTimeBetweenFailure) + MTTR(MeanTimeToRepair))
上图的系统稼动时间是 “正常稼动 100小时” -> “故障修复 4小时” -> “正常稼动 60小时” -> “故障修复 2小时” -> “正常稼动 80小时” -> “故障修复 26小时”。
MTBF(MeanTimeBetweenFailure)的计算方法
MTBF(平均故障间隔时间)是,系统连续运行的平均时间,计算方法如下。
MTBF = 总稼动时间 / 故障次数
上图的 总稼动时间 和 故障次数 如下
- 总稼动时间:100小时 + 60小时 + 80小时 = 240小时
- 故障次数:3次
使用上面的方法计算的话,240小时(总稼动时间)/3次(故障次数) = 80小时(MTBF)。
MTTR(MeanTimeToRepair)的计算方法
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%)。