分布式高可用架构之道
上QQ阅读APP看书,第一时间看更新

1.2 FMEA理论

FMEA(Failure Mode and Effects Analysis,失效模式与影响分析,又称为失效模式与后果分析、失效模式与效应分析、故障模式与后果分析、故障模式与效应分析)。是一种操作规程,旨在对系统范围内潜在的失效模式加以分析,以便按照严重程度加以分类,或者确定失效对于该系统的影响。FEMA是排除架构高可用隐患的利器。

恰当的FEMA工作可以为实践者提供降低系统、设计、过程和服务风险的有用信息。因为FEMA是具有逻辑性和积累性的潜在故障分析方法,它能使任务更加有效地完成。FEMA是系统、设计、过程或服务最重要的早期预防活动之一,它将预防故障和错误发生并阻止其对客户造成损害。

FMEA的使用类型有:

● 过程:对于制造和组装过程的分析。

● 设计:在生产之前,对于产品的分析。

● 概念:在早期的概念设计阶段,对于系统和子系统的分析。

● 设备:在购买之前,对于机械和仪器设备的分析。

● 服务:在发布出来以致影响到顾客之前,对于服务行业过程的分析。

● 系统:对于全局系统功能的分析。

● 软件:对于软件功能的分析。

我们主要使用FMEA对系统进行分析,看看系统是否存在某些可用性的隐患,具体分析方法是:

(1)给出初始的架构设计图。

(2)假设架构中某个部件发生故障。

(3)分析此故障对系统功能造成的影响。

(4)根据分析结果判断架构是否需要进行优化。

FMEA分析方法其实很简单,就是一个FMEA分析表,常见的FMEA分析表如表1-2所示。

表1-2 FMEA分析表

● 功能:FMEA分析涉及的功能点,这里的“功能”指的是从用户角度来看的,而不是从系统各个模块功能点划分来看的。

● 失效模式:或故障模式,指的是系统会出现什么样的故障。

● 影响:按照用户的认知方式,失效模式对于系统功能产生影响的结果。

● 严重程度分级:对于每种影响,分别都赋予一个取值为1(无危险)~10(危重)的严重程度值。严重等级分级有助于工程师排定失效模式及其影响的轻重缓急次序。如果某影响的严重程度值为9或10,则应当考虑采取行动措施,尽可能通过消除该失效模式,或者保护用户免受其影响,来变更相应的设计。

● 原因:故障原因,失效模式描述故障发生的现象,需要列出故障的具体原因。

● 出现频度分级:在这一步中,需要考虑失效的原因以及它所出现的频数。这里的出现频度分级就是指某个具体故障原因发生的概率,可以赋予一个范围为1~10的概率值,也可以将出现频度定义为百分数(%)。

● 风险等级:就是综合严重程度和出现频率来一起判断某个故障的最终等级,风险等级=严重程度分级×出现频度分级。因此,可能出现某个故障影响非常严重,但其概率很低,最终来看风险等级就低。

● 已有措施:针对具体的故障原因,系统现在是否提供了某些措施来应对。

● 解决措施:解决措施指为了能够解决问题而做的一些事情,一般都是技术手段。

我们要做的就是努力消除失效模式,最大限度地降低失效的严重程度,降低失效模式的出现频度,改进检查以发现问题。

下面以FMEA分析文章点赞功能,具体如表1-3所示。

表1-3 使用FMEA分析文章点赞功能