复杂系统失效原理

原文How Complex System Fail
原文作者Richard I. Cook

1. 复杂系统本质上是危险的

所有重要系统(如交通、医疗、电力等),出于自身性质的原因,必然是危险的。虽然系统发生故障的频率不断变化,系统内部处理流程在本质上具有不可降低的危险性。正是在这些危险驱使下建立的防范措施塑造了系统特征。

2. 复杂系统几乎成功的避免了故障

系统失效的高昂代价使得系统逐步建立起多层防范措施,包括技术层面(如备份系统、设备安全特性等)、人员层面(如培训、知识等)以及组织、制度和监管层面(如政策、流程、认证、行为规范、团队培训等)。它们提供的一系列防护,在通常情况下让运维操作远离事故。

3. 灾难性事故源自多重故障

防范措施有效,系统大部分时间运行正常。灾难的发生,往往是由于多个不起眼的小问题同时出现,构成触发系统性故障的条件。少一个问题灾难都不会发生,但当它们遇到一起,系统失效了。换句话说,征候远多于故障。故障最初的征候大部分被系统的安全措施屏蔽了,传递到运维层面的征候也往往没有被一线人员汇报。

4. 复杂系统包含的隐患不断变化

复杂程度导致系统无法在没有隐患的条件下运行。由于不会直接引发故障,这些隐患被当作运维中的小问题。出于成本的考虑,以及难以预测隐患对系统的威胁程度,消除隐患的改进工作受到阻碍。随着技术革新、组织结构调整和系统改进工作的调整,系统内的隐患不断变化。

5. 复杂系统总是带病运行

从上一条可以推导出:复杂系统总是带病运行。有这么多隐患的系统还能工作,因为系统包含了大量冗余,也因为一线人员的运维工作。事故调查几乎总会发现系统曾经出现过快要发生灾难的预兆。一种观点认为应当在故障发生之前找出隐患,这是对系统运维的天真想法。系统运维是动态的,每个部分(组织、人员、技术)都在持续改变。

6. 灾难随时随地可能发生

复杂系统可能发生灾难性故障。一线人员在空间和时间上离潜在故障非常近,灾难随时随地可能发生。能够引发灾难性后果是复杂系统的显著特征。不可能消除潜在风险,这是由复杂系统自身性质决定的。

7. 将事故归因于“根源”是完全错误的

系统失效源于多重故障的共同作用,没有单独的事故“原因”。导致故障的因素不止一个,每个因素又都无法独自引发事故。只有它们一同出现时才会出事。实际上,多重因素关联在一起才能构成事故发生的条件。因此无法单独剥离出事故的“根源”。基于“根源”的分析和结论反映的不是在技术层面上对故障性质的认知,而是将后果归咎于特定原因或事件的社会和文化需求。

8. 事后偏见会影响对一线人员的评价

知道后果的人倾向于认为引发故障的事件应当受到一线人员的重点关注。这表明事后对一线人员处置行为是不精确的。知道了后果的调查人员难以体会一线人员在当时是如何看待这些事件的。看起来一线人员“应当知道”这些因素“必然”引发事故。事后偏见仍然是事故调查的主要障碍,尤其在评价专业能力的时候。

9. 一线人员拥有双重身份:生产人员和维护人员

一线人员操作系统制造产品,同时也要防范事故发生。运维工作的动态性质:兼顾满足产量要求和及时处置事故征候是不可避免的。外界很少了解双重身份的问题。没有故障时,生产人员是主要身份。事故发生后,维护人员是主要身份。外界往往误认为一线人员同时处理两份工作。

10. 操作是在和不确定性博弈

事后看来,故障往往是不可避免的,一线人员的行为则是过错或对事故征兆的无视。但是一线人员的所有行为实际上是赌博,即面对未知结果采取行动。不确定的程度随时变化。事后来看,一线人员的行为显然是在赌博,并且他们赌失败了。但是相对的,成功也是赌博的结果,而这些成功往往被忽视了。

11. 一线行动澄清所有困惑

对于生产目标、资源利用效率、运维成本和效益、以对各种风险后果容忍程度之间的关系,一个组织往往有意保持模糊。一切困惑随着一线人员在系统最前端的操作得到澄清。事后一线人员的行为可能被看作是错误或违规,这种评价存在严重的事后偏见,忽视了其他方面的驱动因素,特别是生产目标压力。

12. 一线人员是复杂系统中的适应性要素

一线人员和基层管理人员主动适应系统,尽量提高生产,降低风险。适应性调整时刻在进行,包括:一、调整系统结构,减少脆弱部件引发事故的风险。二、集中关键资源满足优先需求。三、提供处置已知和未知故障的方法。四、建立检测系统状态变化的方法,以便平稳降低产能,以及其他提高故障恢复能力的方法。

13. 一线人员需要的专业能力不断变化

复杂系统的运维和管理需要大量的专业能力。一线人员的专业能力随着技术革新和人员调整而改变。无论出于哪种原因,对专业能力的培训和改进是系统功能的一部分。因此在任何时候,复杂系统中都会存在不同专业水平的一线人员和实习人员。关于专业能力的核心问题来自于:一、专业能力是一种稀缺资源,需要投入到最困难或最紧急的生产任务。二、需要培养储备专业能力以备不时之需。

14. 系统变更引入新型故障

可靠系统的低故障率鼓励变更,特别是应用新技术降低高频轻微故障的变更。这种变更可能在实际上为新型低频严重故障创造了条件。为了消除已知隐患或提高性能而引入新技术,通常为大规模灾难建立了新路径。很多时候新型低频故障可能比已经修复的问题影响更严重。新型故障难以事先预知,大家都在关注变更预计带来的好处。因为新型严重事故的频率很低,在事故发生前系统可能经历了多次变更,使得变更与故障之间的联系难以确认。

15. “根源”观点限制了防范对潜在故障的效果

事后针对“人为错误”的补救措施通常用于阻止可能“引发”事故的行为。针对事故链末端的措施只能稍微降低未来事故发生的概率。事实上,由于引发潜在故障的条件不断变化,发生相同事故的概率非常低。事后补救措施不仅没有提高安全性,反而增加了系统耦合度和复杂度。增加了潜在故障数量,也让故障检测和恢复变得更加困难。

16. 安全是整体特征,不是局部特征

安全是系统的涌现性特征,而非存在于某个人、某个设备或组织中的某个部门。安全无法购买或制造,它不是独立于其他部分的特性。因此安全不能像原材料一样进行加工。系统的安全状态是动态的。系统的持续变更使得风险和风险管理工作也在不断变化。

17. 一线人员持续维护系统安全

无故障运维是一线人员努力使系统保持在有效范围内的工作的成果。这些工作大多是看起来简单的日常运维。由于运维操作总是有风险的,一线人员对系统状态的调整实际上保障了系统安全。调整工作通常从经过演练的例行事务中选择,有时也会重新组合事务或建立新方法。

18. 无故障运维需要故障处置经验

识别风险并成功处置需要近距离接触故障。提高系统稳定性需要一线人员能够识别临界条件。此时系统状态开始变差,运行情况难以预测,或者无法快速恢复。在复杂系统中,一线人员需要全面评估处置故障,保障系统整体稳定。要提高安全性,需要为一线人员提供故障标准,以及运维操作对系统影响程度的标准:这些操作让系统远离临界条件,还是更靠近临界条件?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/864397.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全球首款搭载Google Gemini和GPT-4o的智能眼镜发布

智能眼镜仍然是一个尚未完全成熟的未来概念,但生成式人工智能的到来显著提升了这些设备的能力。Meta 的 Ray-Ban 智能眼镜被许多人视为当今最好的选择之一,而现在 Solos AirGo Vision 正在为其带来竞争,这款眼镜还集成了 Google Gemini 支持。…

生命在于学习——Python人工智能原理(3.1.1)

Python部分结束了,开始概率论部分 一、概率基本知识 1.1 事件与概率 1.1.1 事件的运算与关系 (一)基本概念 定义1 随机试验 如果一个试验满足如下条件: 在试验前不能断定其将发生什么结果,但可明确指出或说明试验…

浅聊JavaScript中的栈(stack)

前言 这篇文章结合leetcode题目讲解一下栈这种结构 第20题:20. 有效的括号 - 力扣(LeetCode) 第LCR-147题LCR 147. 最小栈 - 力扣(LeetCode) 栈(stack) 在讲解题目之前,我们先来…

HTTPS是什么?原理是什么?用公钥加密为什么不能用公钥解密?

HTTPS(HyperText Transfer Protocol Secure)是HTTP的安全版本,它通过在HTTP协议之上加入SSL/TLS协议来实现数据加密传输,确保数据在客户端和服务器之间的传输过程中不会被窃取或篡改。 HTTPS 的工作原理 客户端发起HTTPS请求&…

primetime中cell和net的OCV

文章目录 前言一、Cell OCV1. POCV coefficient file2. POCV Slew-Load Table in Liberty Variation Format(LVF lib) 二、Net OCV三、如何check OCV是否已加上?总结 前言 在生产中,外界环境的各种变化,比如PVT&#…

C语言之线程的学习

线程属于某一个进程 共同点:都能并发 线程共享变量,进程不共享。 多线程任务中,其中某一个线程调用了exit了,其他线程会跟着一起退出 如果是特定的线程就调用pthread_exit 失败返回的是错误号 下面也是

代码随想录-Day44

322. 零钱兑换 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数…

科普文:一文搞懂jvm原理(三)执行引擎

概叙 科普文:一文搞懂jvm(一)jvm概叙-CSDN博客 科普文:一文搞懂jvm原理(二)类加载器-CSDN博客 前面我们介绍了jvm,jvm主要包括两个子系统和两个组件: Class loader(类装载器) 子系统,Execution engine(执行引擎) 子系…

16_C语言编程基础

目录 C语言入门 程序段和代码段 C语言入门实例 英文分号(;) 注释 标识符 保留字 C中的空格 C数据类型 基本类型 sizeof获取存储字节 void类型 变量 C数组 C枚举 C中的左值(lvalue)和右值(rvalue) C常量 变量存储类型 C常用关键字(保留字) 宏定义#define co…

生成式AI:未来商业的变革者

在2023年,生成式人工智能(GenAI)的浪潮席卷了全球,成为科技领域最炙手可热的话题之一。它不仅改变了我们与机器的互动方式,更在商业创新和生产力提升方面发挥了巨大的作用。本文将深入探讨2024年生成式AI的应用模式、趋…

docker初始化运行mysql容器时自动导入数据库存储过程问题

问题:用navicat导出的数据库脚本,在docker初始化运行mysql容器时,导入到存储过程时出错。 ERROR 1064 (42000) at line 2452: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for t…

面经-数据库

1.MySQL 1.1什么是MySQL? MySQL 是⼀种关系型数据库,在 Java 企业级开发中⾮常常⽤,因为 MySQL 是开源免费的,并 且⽅便扩展。阿⾥巴巴数据库系统也⼤量⽤到了 MySQL ,因此它的稳定性是有保障的。 MySQL 是开放源代码的&…

微信小程序-插槽slot

一.插槽slot 在页面使用自定义组件的时候&#xff0c;如果在自定义组件里面写子组件&#xff0c;子组件的内容无法显示。 <custom01> <text slotslot-top>你好&#xff0c;上方组件</text> 你好&#xff0c;组件 <text slotslot-bottom>你好&#xf…

三层限流:为高并发系统保驾护航

文章目录 前言第一层限流&#xff1a;Nginx 层面的 IP 限流第二层限流&#xff1a;Gateway 对用户层级的限流第三层限流&#xff1a;微服务限流分布式限流和单机限流的优缺点&#xff1a;1、RateLimiter的使用2、Hystrix的使用3、Redislua脚本4、使用Sentinel 关于为何同时使用…

做PFMEA的经验之谈

在制造业的广袤领域中&#xff0c;PFMEA&#xff08;过程失效模式与影响分析&#xff09;是一项至关重要的工具&#xff0c;它用于识别并评估生产过程中的潜在失效模式&#xff0c;以及这些失效模式可能导致的后果。作为一名在制造业有多年经验的专业机构&#xff0c;深圳天行健…

安装KB5039212更新卡在25% 或者 96% 进度

系统之家7月1日消息&#xff0c;微软在6月11日的补丁星期二活动中&#xff0c;为Windows 11系统推出了KB5039212更新。然而&#xff0c;部分用户在Windows社区中反映&#xff0c;安装过程中出现失败&#xff0c;进度条在25%或96%时卡住。对于遇到此类问题的Windows 11用户&…

【论文复现|智能算法改进】基于自适应动态鲸鱼优化算法的路径规划研究

目录 1.算法原理2.改进点3.结果展示4.参考文献5.代码获取 1.算法原理 SCI二区|鲸鱼优化算法&#xff08;WOA&#xff09;原理及实现【附完整Matlab代码】 2.改进点 非线性收敛因子 WOA 主要通过控制系数向量 A 来决定鲸鱼是搜索猎物还是捕获猎物&#xff0c;即系数向量 A 可…

【LLM 论文】Self-Refine:使用 feedback 迭代修正 LLM 的 output

论文&#xff1a;Self-Refine: Iterative Refinement with Self-Feedback ⭐⭐⭐⭐ CMU, NeurIPS 2023, arXiv:2303.17651 Code: https://selfrefine.info/ 论文速读 本文提出了 Self-Refine 的 prompt 策略&#xff0c;可以在无需额外训练的情况下&#xff0c;在下游任务上产…

蒂升电梯职业性格和Verify认知能力SHL测评答题攻略及薪资待遇解密!

​一、蒂升电梯职业性格和认知能力测评考什么 您好&#xff01;蒂升电梯公司邀请您参加的OPQ职业性格测评和Verify认知能力测评是两种常见的评估工具&#xff0c;用于帮助了解个人的职场性格特点和认知能力。 OPQ职业性格测评 这是一种性格测试&#xff0c;通常用于评估个人在…