写点什么

自动化也要人性化:让复杂系统更加可预测和可靠

  • 2014-11-05
  • 本文字数:1103 字

    阅读完需:约 4 分钟

软件开发者 Brian Troutwine DevOps Days 上分享了有关复杂系统和实时系统的话题,内容涉及到人与机器的交互。Brian 举例说明了哪些是正确的自动化,哪些是不正确的自动化。

实时系统并不仅仅是快速运行的系统,而且是有时间期限的系统。实时系统可分为如下几类:

  • 软类型(soft),即过期后收益递减
  • 固类型(firm),即可容忍偶尔的过期,只是会影响整体系统的服务质量(QoS)
  • 硬类型(hard),即任何过期都会导致整个系统不可用

复杂系统则通常带有如下特征:

  • 非线性反馈
  • 与外部系统耦合
  • 难以建模,难以理解

Brian 用两个例子介绍了关于人类跟机器关系的两种解读:阿波罗 13 号事件中的人类与机器协作,以及切尔诺贝利核事故中的人类与机器的对抗。

在宇宙飞船的项目中,NASA 总是不确定要如何把人类安插到系统当中。有些实验构建了完全自动化的飞船,软件的设计思路完全来自于工程师。宇航员则不觉得这是个好主意,因为他们都是经验丰富的飞行员,在他们看来,宇宙飞船也无非就是更高级的飞机而已,应该由人类来操作,计算机作为辅助系统,人和机器之间达到一种平衡的状态。在阿波罗 13 号事件当中,正是经验丰富的宇航员找到了问题的关键,改造系统以适应他们的需求,才最终解救了自己。

工具在上述事件中的作用是:

  • 正确的自动化减少了重复性劳动
  • 正确的自动化减少了错误
  • 正确的自动化解放人类

而在第二个例子当中,切尔诺贝利核电站的系统被设计成了正反馈系统,即一旦有错误发生,错误会叠加反馈给系统自身,最终造成灾难。在一次后备系统的测试过程中,反应堆进入了容易发生错误的临界状态。由于系统设计和管理上的缺陷,警告信息被忽略,而操作员则进行了误操作;另一方面,反应堆的安全系统当时处于关闭状态。在这种人类不受信任的环境当中,反应堆最终出了故障。这是一个系统处于主导地位,最终导致人类死亡、流离失所。

  • 错误的自动化把人类机器化了。系统不给人类提供信息。
  • 错误的自动化提供错误的指引,提供错误的信息。
  • 错误的自动化使人陷入困境。

每个系统都潜藏着毁灭自己的种子。“正常的意外”总是不可避免,因此故障必然会发生。每个系统的设计都要将故障纳入考虑,否则系统故障将会以想象不到的方式发生。

在设计一个复杂系统的时候,需要认识到人类的局限性并以自动化补充这部分局限性。这个工作不能自己闷头做,需要跟人沟通,集思广益:

  • 用资源交换你需要的东西。
  • 接受故障,从故障中学习。
  • 从他人的事故中学习。
  • 那些一旦故障就造成大损失的组件,可能不值得去做。
  • 理解你构建的东西。

本次分享来自 DevOps Days 第二天的内容第一天的内容可在InfoQ 英文站上查看。

查看英文原文: Automation with humans in mind: making complex systems predictable, reliable and humane

2014-11-05 07:541634

评论

发布
暂无评论
发现更多内容

普通二本,吃透这份阿里高级专家的《Java面试手册21版》成功拿下腾讯offer

Java架构师迁哥

如何在 Electron 上实现 IM SDK 聊天消息全文检索

网易云信

全文检索 Electron IM

看Kunpeng BoostKit 使能套件如何实现大数据场景倍级性能提升

华为云开发者联盟

大数据 开源 鲲鹏 鲲鹏计算 Kunpeng BoostKit

代码写的烂才是原罪?字节三面+微信四面+PayPal四面,大厂面经分享

Java 程序员 架构 面试

@成都的Coder

蚂蚁集团移动开发平台 mPaaS

flutter 移动开发 mPaaS

本科毕业六年,备战一个月,四面阿里巴巴定级P7

Java架构师迁哥

大陆集团携手亚马逊云科技打造创新的汽车软件平台

亚马逊云科技 (Amazon Web Services)

深度剖析:Redis分布式锁到底安全吗?看完这篇文章彻底懂了!

Kaito

redis zookeeper 分布式 后端

HTTPS协议

IT视界

解读革命性容器集群CCE Turbo:计算、网络、调度全方位加速

华为云开发者联盟

容器 华为云 CCE Turbo 集群服务器

即时通讯系列-WorkPlus简介

BeeWorks

开源 即时通讯 IM 办公自动化

全过程智慧教育,看北京四中网校和亚马逊云科技如何实现?| 精选案例

亚马逊云科技 (Amazon Web Services)

探讨AI人才培养新思路,2021北京智源大会百度AI人才培养论坛召开

百度大脑

AI 人才培养

博客

vincentjia

老同学突然升到了阿里P7,只因偷偷掌握了JVM的奥秘?

Java架构师迁哥

从零开始学习3D可视化之坐标系

ThingJS数字孪生引擎

物联网 可视化 数字时代 3D模型 3D可视化

阿里都会问些什么?4面阿里余额宝Java高级技术岗

Java架构师迁哥

iOS开发-Objective-C 中的 MVVM 模式介绍

iOSer

ios objective-c MVVM ios开发

入职美团定级P7,总结2021年最新180道高级岗面试题及答案

Java架构师迁哥

上云就上百度智能云,百度智能计算峰会召开,AI原生云全新升级

百度大脑

AI 智能云 峰会

双非本科逆袭记,阿里技术四面+交叉面+HR面,成功拿到offer

Java架构师迁哥

一文读懂开源项目 OpenHarmony2.0

科技热闻

不愧是清华大佬,一个联机对战游戏就把23种设计模式给抽丝剥茧了

Java架构师迁哥

别乱打日志了,这才是正确的打日志姿势!

xcbeyond

日志 规范 6月日更

限流篇,欣赏阿里开源Sentinel

下雨喽

架构 设计 sentinel 限流

带你遨游银河系的十种分布式数据库

悟空聊架构

数据库 分布式 分布式数据库 6月日更

干货:ANR日志分析全面解析

vivo互联网技术

android 堆栈 日志分析 anr

聚焦机器同传前沿进展,第二届机器同传研讨会将在NAACL举办

百度大脑

人工智能 机器

从底层原理出发,了解Linux内核之内存管理

Linux服务器开发

后端 操作系统 内存管理 Linux内核 底层原理

京东T8Java架构师呕心沥血总结整理的《15w字的Java面试手册》免费开放分享给大家复习。

Java架构之路

Java 程序员 架构 面试 编程语言

2021版最新!字节跳动3面+腾讯6面一次过,谈谈我的大厂面经

Java架构之路

Java 程序员 架构 面试 编程语言

自动化也要人性化:让复杂系统更加可预测和可靠_DevOps & 平台工程_Carlos Sanchez_InfoQ精选文章