AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

使用混沌工程增强 API 的可恢复性

  • 2018-05-28
  • 本文字数:1343 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Gremlin 团队在博客上给出了一种简单的混沌实验,可用做验证一个组织的API 是否具有可恢复性的方法。与适当地使用此领域中涌现的商业和开源工具一样,使用混沌工程的原则以及运行“游戏日”(可看成是IT 系统和人员的消防演练)等技术同样可体现出自身的价值。

在这篇由Gremlin 首席站点可靠性工程师 Tammy Butow 撰写的博客帖子中,一开篇就指出,尽管很多组织通过基于 Web 的 API 提供自身的服务(以及提供核心商业价值),但是从作者的经验看,这些 API 及相关的架构常被看成是“二等公民”。随着组织规模的扩张,这种方式存在着一些风险,例如可导致用户体验降级的 API 层失败,甚至是非常严重的事故。在与之相关的运行模式中,增加API 的使用将会增大相关后台系统的压力,并且由请求数量增加而产生的负载可能并非与性能和可靠性呈线性关系。因此,工程师应该制定并运行一些试验,了解负荷增加、系统退化和基础设施失效的影响情况,并最终设计出可降低风险的系统。

Butow 建议,使用“混沌工程”原则和“游戏日”是形成上述理解并设计实验的最好方式。对于不熟悉“游戏日”概念的读者,Adrian Cockcroft 在QCon 旧金山大会将其比喻为“ IT 领域的消防演练”。出乎意料的应用行为或架构失败,常会导致工程师的人为介入,这会使情况变得更糟。在日常生活中,消防演习可训练人们接受如何应对火灾,进而在真正发生火灾的情况下挽救生命,IT 游戏日发挥了同样的作用。

该 Gremlin 博客帖子中,给出了一个针对典型 API 网关重度负载情况的例子脚本,并介绍了如何使用 Gremlin 的“可恢复服务”SaaS 商业平台实现在运行 API 网关的计算实例上注入失败(例如,高 CPU 或内存使用率,或者完全终止)。Butow 在博客帖子中强调指出(她同样也曾在先前的 QCon 伦敦大会演讲中提及),在开始运行混沌实验之前,对监控和可观察性的需求是至关重要的。

“在着手测定 API 可恢复性之前,你应该做的一件事情就是在一致的基础上运行混沌实验。确保你具有良好的可见性(监控),并增加回退覆盖率,所有这些将有助于强化你的系统。”

混沌工程原则正逐渐被主流大众所采纳。这一方面是在 Gremlin 等商业混沌工具和服务业务的驱动下,另一方面的驱动力也来自于一些该领域的先驱者(例如 Netflix ,早期 chaos monkey 的创立者)、一些由社区牵头的工作(例如 Chaos Toolkit )以及一些企业组织(例如 Expedia 和 Bloomberg。后者发布了专用于 Kubernetes 的开源混沌工具“ PowerfulSeal ”)。

随着混沌工程日渐广为采用,这正引导组织考虑是否应构建或购买相关工具,Gremlin 团队推荐工程师应在一些权衡上做出考虑,包括:构建自身混沌实验平台的TCO(总体拥有成本,Total Cost of Ownership)、将内部系统暴露给外部SaaS 平台的能力(以及可取性),以及团队当前技能集及团队在平台路线图方面对控制的需求。一些领域引领者,例如Adaptive Capacity Labs 的联合创始人 John Alspaw ,也提醒说不应忽视可恢复工程中人的因素,这事实上要比相关的工具更为重要。

更多信息,提供在 Gremlin 官方网站上,首届混沌大会将于2018 年9 月28 日在旧金山举行。

查看英文原文: Increasing the Resilience of APIs with Chaos Engineering

2018-05-28 15:401816
用户头像

发布了 391 篇内容, 共 143.2 次阅读, 收获喜欢 257 次。

关注

评论

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

Digital Realty 将人工智能驱动的能效平台扩展至亚太地区

财见

一文读懂模块化赛道新的头部公链Meta Earth

加密眼界

【IoTDB 线上小课 01】我们聊聊“金三银四”下的开源

Apache IoTDB

2024年智慧厕所解决方案,光明源智能科技是怎么实现的。

光明源智慧厕所

广东智慧公厕管理系统哪家好

光明源智慧厕所

今日分享丨单点登录原理及OAuth20授权码协议

inBuilder低代码平台

低代码 单点登录

企业级依赖管理: 深入解读 Maven BOM

LightGao

maven 设计模式 架构设计 软件系统 java 架构

亚马逊店铺引流:海外云手机的利用方法

Ogcloud

云手机 海外云手机 云手机海外版 国外云手机 美国云手机

2024 年“和鲸杯”辽宁省普通高等学校本科大学生计算机设计竞赛启动会圆满结束!

ModelWhale

人工智能 大数据 大学生竞赛

我们是如何测试人工智能的(二)数据挖掘篇

测吧(北京)科技有限公司

测试

数仓调优实战:GUC参数调优

华为云开发者联盟

数据库 华为云 华为云开发者联盟 华为云GaussDB(DWS) 企业号2024年4月PK榜

和鲸科技入选 2023 年度中国高科技高成长企业系列榜单丨第一新声 & 天眼查

ModelWhale

大数据 #人工智能 人工智能公司

浪潮信息发布全球首个单存储16节点SAP HANA集群方案

财见

Apache IoTDB 入选国家级规划教材《数据库系统概论(第6版)》!

Apache IoTDB

我们是如何测试人工智能的(八)包含大模型的企业级智能客服系统拆解与测试方法 – 大模型 RAG

测吧(北京)科技有限公司

测试

ChatGPT全方位解析:如何培养 AI 智能对话技能?

测吧(北京)科技有限公司

测试

KaiwuDB 成功入选《2023 ToB 行业影响力价值榜 · 创新力产品榜》

KaiwuDB

数据库

建设智慧公厕有什么好处?都有哪些功能?

光明源智慧厕所

我们是如何测试人工智能的(三)数据构造与性能测试篇

测吧(北京)科技有限公司

测试

我们是如何测试人工智能的(四)补充:模型全生命周期流程与测试图

测吧(北京)科技有限公司

测试

我们是如何测试人工智能的(七)包含大模型的企业级智能客服系统拆解与测试方法 – 知识引擎

测试人

人工智能 软件测试 自动化测试 测试开发

Mistral Large模型现已在Amazon Bedrock上正式可用

财见

零信任安全模型:构建未来数字世界的安全基石

GousterCloud

零信任

我们是如何测试人工智能的(五)案例介绍:ASR 效果测试介绍

测吧(北京)科技有限公司

测试

Sam Altman 联手苹果前首席设计官打造 AI 设备;特斯拉将推出无人驾驶出租车丨 RTE 开发者日报 Vol.178

声网

TCL实业盘古实验室发布全域光晕控制等多项创新显示技术

极客天地

我们是如何测试人工智能的(七)智能客服系统拆解与测试方法

测试人

人工智能 软件测试

我们是如何测试人工智能的(六)推荐系统拆解

测吧(北京)科技有限公司

测试

我们是如何测试人工智能的(七)包含大模型的企业级智能客服系统拆解与测试方法 – 知识引擎

测吧(北京)科技有限公司

测试

探秘Linux进程与线程:多进程与多线程的奥秘及实战场景

测吧(北京)科技有限公司

测试

使用混沌工程增强API的可恢复性_DevOps & 平台工程_Daniel Bryant_InfoQ精选文章