混沌工程:通过可控故障实验提升软件系统可靠性
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

Chapter 1
第1章
进入混沌工程的世界

本章涵盖以下内容:

❑混沌工程是什么,不是什么

❑进行混沌工程的动机

❑剖析混沌实验

❑一个简单的混沌工程实践案例

如果你要设计一辆汽车,要怎么做才能百分之百保证它是安全的?如今的车辆真的是工程学的一大奇迹,从雨刷器到救生气囊,众多子系统集成在一起,不仅让你可以纵情驰骋,还可以在发生事故时保护你和乘客。当你忠诚的汽车“舍车保帅”,通过战略性地使用“防撞缓冲区”(永远无法恢复)来拯救你时,这不是很令人感动吗?

乘客的安全是重中之重,因此所有模块都要经过严格的测试。假设你在现实世界中遇到了交通事故,即使各个模块都能按照设计正常工作,这真的能确保你平安无事吗?如果你的名片上写着“新车碰撞测试”,你显然不会这么认为。大概这就是每种新车在投放市场之前都要通过碰撞测试的原因。

想象一下:在仿真场景中,量产车以受控速度行驶并撞上障碍物,整个过程都在高速摄像头的严密观察之下,以此来对整个系统进行测试。在许多方面,混沌工程之于软件系统,正如同碰撞测试之于汽车工业:通过精心设计的实验方法发现系统问题。在本书中,你将了解应用混沌工程技术来改善计算机系统的原因、时机和方法。也许通过混沌工程还可以挽救一些生命呢!没有什么比核电站更适合作为入门案例了。