您现在的位置是:亿华云 > 数据库
Netflix: 训练更聪明的混沌猴子
亿华云2025-10-04 03:35:57【数据库】7人已围观
简介来源:混沌工程实践作者:三水蜗牛 原文作者:Kolton Andrus, Ben Schmaus标题:Automated Failure Testing, aka Training Smarter M
来源:混沌工程实践
作者:三水蜗牛 原文作者:Kolton Andrus,练更 Ben Schmaus
标题:Automated Failure Testing, aka Training Smarter Monkeys
出处:Netflix Technology Blog
前 言

在Netflix,我们发现主动的聪明故障测试是一个非常棒的方法,帮助我们在生产环境中发现潜在的混沌猴问题,为我们的练更用户提供了可靠的产品。
我们做的聪明所有努力(虽然有些是手动的),帮助我们顺利地没有意外地度过了整个假期(如果在除夕之夜被选中值班,混沌猴那就更好了!练更😊)。聪明
但是混沌猴谁喜欢手动的工作呢?另外,我们只测试预期的练更失败,每次练习通常只针对单个服务或组件进行测试。聪明我们要做得更好!混沌猴
想象一下,练更一只猴子在你的聪明代码和基础架构中爬行,注入小的混沌猴故障并检查其是否导致用户影响。
在探索构建这种猴子的过程中,我们发现了由彼得·阿尔瓦罗(Peter Alvaro)开发的称为Molly的云服务器提供商故障测试方法。(http://www.cs.berkeley.edu/~palvaro/molly.pdf)
鉴于我们已经有了一个称为FIT(Fault Injection Test)的故障注入服务,相信我们可以在短期内构建一个原型实现。(https://medium.com/@Netflix_Techblog/fit-failure-injection-testing-35d8e2a9bb2)
我们认为,把Molly论文中阐述的概念应用到大规模生产中,这非常有意义。因此,我们与Peter取得了联系,了解他是否有兴趣共同构建原型。以下就是我们的合作结果介绍。
一、探索算法

“依赖树驱动的故障注入(LDFI)逆向地从正确的系统输出中,判定注入故障是否会改变输出结果。”
Molly首先查看成功请求的所有内容,然后问:“哪些因素会改变这个结果?” 我们以下面这个简化的请求为例:
故障集: (A|R|P|B)
一开始,我们假设所有都是必要的因素。然后,假设用户影响是由A或R或P或B故障引起的,其中A代表API(其他以此类推)。亿华云我们首先从潜在故障点中随机选择并重新执行该请求,并在选定点注入故障。
三个潜在的结果:
请求失败:面临失败(将来的实验需要调整以包含此故障) 请求成功:服务/故障点并不重要 请求成功:故障点被接管自动恢复了(故障转移或回退) 在此示例中,评价(Ratings)故障,请求成功,从而生成了以下图表:二、自动故障测试实现

三、用户影响

结 果

很赞哦!(355)
相关文章
- 3、不明先知,根据相关征兆预测可能发生的事件,以便提前做好准备,赶紧注册相关域名。;不差钱域名;buchaqian抢先注册,就是这种敏感类型。预言是最敏感的状态。其次,你应该有眼力。所谓眼力,就是善于从社会上时不时出现的各种热点事件中获取与事件相关的域名资源。眼力的前提是对域名领域的熟悉和丰富的知识。
- 详解Docker容器监控之Cadvisor,值得收藏
- 为Facebook跳楼华人同事发声被开除 当事人现身回应
- Netflix应用架构之用于个性化和推荐的系统架构
- 5、企业注册国内域名需要证件,其它情况一律不需要证件。
- 无服务器架构安全面面观
- 你不知道自己需要的7个Visual Studio Code扩展
- 在Node.js中将SVG图像转换为PNG,JPEG,TIFF,WEBP和HEIF格式
- 为什么喜欢国外注册域名?国外注册域名注意什么?
- 揭开 JavaScript 引擎的面纱