从 0 开始学架构
李运华
网名“华仔”,前阿里资深技术专家(P9)
151055 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 66 讲
结束语 (1讲)
结课测试 (1讲)
从 0 开始学架构
15
15
1.0x
00:00/00:00
登录|注册

24 | FMEA方法,排除架构可用性隐患的利器

我在前面的专栏分析高可用复杂度的时候提出了一个问题:高可用和高性能哪个更复杂,大部分同学都分析出了正确的答案:高可用更复杂一些,主要原因在于异常的场景很多,只要有一个场景遗漏,架构设计就存在可用性隐患,而根据墨菲定律“可能出错的事情最终都会出错”,架构隐患总有一天会导致系统故障。因此,我们在进行架构设计的时候必须全面分析系统的可用性,那么如何才能做到“全面”呢?
我今天介绍的FMEA 方法,就是保证我们做到全面分析的一个非常简单但是非常有效的方法。

FMEA 介绍

FMEA(Failure mode and effects analysis,故障模式与影响分析)又称为失效模式与后果分析、失效模式与效应分析、故障模式与后果分析等,专栏采用“故障模式与影响分析”,因为这个中文翻译更加符合可用性的语境。FMEA 是一种在各行各业都有广泛应用的可用性分析方法,通过对系统范围内潜在的故障模式加以分析,并按照严重程度进行分类,以确定失效对于系统的最终影响。
FMEA 最早是在美国军方开始应用的,20 世纪 40 年代后期,美国空军正式采用了 FMEA。尽管最初是在军事领域建立的方法,但 FMEA 方法现在已广泛应用于各种各样的行业,包括半导体加工、餐饮服务、塑料制造、软件及医疗保健行业。FMEA 之所以能够在这些差异很大的领域都得到应用,根本原因在于 FMEA 是一套分析和思考的方法,而不是某个领域的技能或者工具。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《从 0 开始学架构》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(31)

  • 最新
  • 精选
  • 云学
    我们公司也在用这套方法,这套方法其实就是多设计一些异常case,系统能够依然保持稳定,当然正常的case也是很重要的。

    作者回复: 知道这套方法论的公司不多,说明你们公司技术比较厉害👍

    2018-06-21
    4
    98
  • yason li
    请教老师: 根据网上查到的资料发现,经过多年的演进FMEA从定性和定量两个维度分别延伸出了FMECA和FMEDA,实际进行架构分析时是不是使用FMECA会更好一些? 还有就是FMEA分析貌似比较适合系统中单点故障的评估。如果系统比较复杂完成故障的原因有可能是多点同时互相影响那么评估时候是不是使用FTA 故障树分析更合适呢?

    作者回复: 1. 我也是看了你的评论才知道还有FMECA和FMEDA,我查了一下资料,其实都是FMEA的扩展版,其实我们在具体实践的时候,分析纬度已经包括FMECA中的危害性分析(文中的“严重程度”),以及FMEDA中的诊断分析(文中的“已有措施”) 2. FTA我理解是一种故障影响分析方式,例如FMEA中分析“故障影响”

    2018-06-21
    33
  • 小喵喵
    MySQL 主备机,当业务服务器检测到主机无法连接后,自动连接备机,这个是需要这程序来感知主机是否联通的吗?若是,这个怎么写这个程序呢?还有如何自动切换到备机呢?我基础太差了,谢谢老师的每次回答我的问题。

    作者回复: 1. java有jdbc异常,你可以详细看看,其他语言类似 2. 切换到备机其实就是重新连接备机,jdbc中的getconnection

    2018-07-28
    16
  • 赵春辉
    之前搞过一些军方的项目,就是搞FMEA的,主要做硬件的可靠性分析,没想到在这里能看到。

    作者回复: 挺好的一个方法

    2020-04-14
    10
  • 花花大脸猫
    如果一个公司的架构师连公司本身的业务都不清楚的情况下,直接进行架构设计,这样做出来的架构能用么?是不是您所说的PPT架构师?

    作者回复: 不是,PPT架构师一般指业务很熟,画框图很厉害,各种技术术语也很熟,但是技术细节和实现不懂

    2019-04-23
    8
  • 王宁
    HDFS可以从 网络原因分片传输 存储分片大小 DataNode故障 NameNoe故障 如果两个NameNode都出现问题这个时候就需要人工介入了吧。

    作者回复: 是的

    2018-07-07
    7
  • 麦耀锋
    例如,“所有用户都无法修改资料”,有的人认为是高,有的人可能认为是中,这个没有绝对标准,一般建议相关人员讨论确定即可。也不建议花费太多时间争论,争执不下时架构师裁定即可。 上面这一段,实际上在“争执不下”的时候,make decision的不是架构师,而是产品经理或者业务负责人。因为只有产品、业务的人才知道,这个影响对于用户而言意味着什么,影响有多大。架构师一般不具备这方面的知识。

    作者回复: 架构师要求懂业务的,如果完全由产品经理或者业务负责人来定,他们基本都是“越高越好”、“永远不出错最好”这种想法 :)

    2021-11-01
    5
  • 小喵喵
    FMEA除了分析高可用,也能分析其他架构吗,比如高性能,冗余等架构?

    作者回复: 不能,只适合分析高可用

    2018-07-28
    5
  • Hook
    请教老师: FMEA 实战表格中(正文的倒数第二张图),故障原因是 “MySQL 服务器断电” 对应了 2 个功能点,分别为:登录、注册。 其中,“登录”功能点它的“后续规划”列中写的是“增加备份 MySQL”,而“注册”功能点对应的是“无,因为即使增加备份机器,也无法作为主机写入”。 我的问题是: “注册”功能点对应的后续规划可不可以是:“增加 mysql 主从切换功能”呢?老师写“无”是从什么角度来思考“后续规划”的。

    作者回复: 确实可以这么做,但有些场景没必要做这么复杂,注册不了过段时间注册就可以了😄

    2018-06-21
    5
  • Geek_9f2339
    FMEA faile model ,effects anlysis 核心是针对功能,模块进行分析,评估出功能不可用的原因,以及后果,和相应的解决方案 其中评估的核心是对 功能不可用的原因进行 风险、原因,后果,解决方案 如:0.1%的概率 因为 A原因造成 灾难性的 影响范围为30%的XX后果, 相对应的解决方案是什么 当这样的评估足够多的时候,再根据相对应的优先级,进行处理 当出现解决方案冲突点的时候,就要架构师和业务人员进行确定分析 具体的实行方案是什么 其中针对一些Case 可以有相应的解决方案,不单单只是技术手段,可是一业务手段(增加业务限制),管理手段(排除一些隐患,更换一些可能出问题的硬件,或者升级配置等)等

    作者回复: 归纳的挺好。

    2021-07-16
    4
收起评论
显示
设置
留言
31
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部
文章页面操作
MAC
windows
作用
esc
esc
退出沉浸式阅读
shift + f
f11
进入/退出沉浸式
command + ⬆️
home
滚动到页面顶部
command + ⬇️
end
滚动到页面底部
⬅️ (仅针对订阅)
⬅️ (仅针对订阅)
上一篇
➡️ (仅针对订阅)
➡️ (仅针对订阅)
下一篇
command + j
page up
向下滚动一屏
command + k
page down
向上滚动一屏
p
p
音频播放/暂停
j
j
向下滚动一点
k
k
向上滚动一点
空格
空格
向下滚动一屏
播放器操作
MAC
windows
作用
esc
esc
退出全屏
⬅️
⬅️
快退
➡️
➡️
快进
空格
空格
视频播放/暂停(视频全屏时生效)