Chaos Engineering

2023-09-09

Chaos Engineering

Chaos Engineering是Netflix公司提出来的一种保障系统稳定性的工程实践,中文里一般称为“混沌工程”。

“混沌工程”主要解决什么问题呢? 一般情况下,技术团队都是遇到系统故障之后才对系统状态进行干预,但因为是被动,所以往往会手忙脚乱,但团队如果之前有对故障处理有过演练,那可以快速缩小故障恢复时间。所以,很多公司开始有准备的做“消防演习”,提前准备,提前通知,提前到位,准时制造麻烦,依次来锻炼团队的应急响应能力。

这属于第一阶段,因为要估计到系统故障对业务的影响,所以都是有预谋有准备的做这个事情。

如果公司有相对开放的文化,系统稳定性工作也已经有很好的基础了,那这时候查看和验证团队故障应急相应能力以及系统的弹性和恢复力,最好的方法就是主动地“没有困难,制造困难”,这时候,这就是“混沌工程”发挥效用的地方。

Netflix最早其实就是偶然发现可以通过制造小麻烦来验证系统的稳定性,所以后面才慢慢推广开“混沌工程”实践,并且在2021年开源了他们内部的Chaos Monkey工具。

国内大厂随后也在保障自身系统稳定性的历程中摸索出自己的“混沌工程”的实践。