一文理解分布式服务架构下的混沌工程实践(含PPT)

本文由阿里巴巴高级开发工程师肖长军分享,详细介绍了混沌工程的定义、价值、原则和实施步骤,以及在分布式服务架构下的具体实践案例。通过混沌工程,可以验证系统架构的容错能力,提高故障应急效率,降低故障复发率,同时适用于架构师、开发、运维、测试和产品设计等多个角色。肖长军还介绍了混沌工程的落地步骤和企业中推广混沌工程文化的方法,并提及了混沌工程工具ChaosBlade和阿里云产品AHAS Chaos的重要性。
摘要由CSDN通过智能技术生成

导读:近日,在 GIAC(全球互联网架构大会)上,来自阿里巴巴高可用架构团队的高级开发工程师肖长军(花名穹谷)做了《分布式服务架构下的混沌工程实践》主题分享。本次分享包含三部分,第一部分从定义、价值、原则、流程全方位的介绍混沌工程,第二部分讲述混沌工程如何在企业中落地,并穿插介绍开源项目 ChaosBlade 和混沌实验平台 AHAS Chaos 架构设计,最后一部分结合两个具体案例介绍了分布式服务下的混沌工程实践。


640?wx_fmt=png肖长军,花名穹谷,阿里巴巴高可用架构部门高级开发工程师,多年分布式服务、应用性能监控和混沌工程领域研发经验。ChaosBlade 开源项目负责人,阿里云产品 AHAS 核心开发,故障演练平台 MonkeyKing 核心开发。

演讲全文

大家好,我是来自阿里的肖长军,今天给大家分享混沌工程在分布式服务架构下的具体实践。

640?wx_fmt=png先做个自我介绍,我来自于阿里高可用架构团队,花名穹谷,做过分布式系统设计和 APM 研发相关工作,现在专注于高可用架构和混沌工程领域,是阿里云产品 AHAS 底层技术负责人和开源项目 ChaosBlade 负责人,并且承担集团内故障演练、突袭演练、攻防演练相关的研发工作。今天分享的内容包含以下三个方面。

640?wx_fmt=png先从混沌工程的定义、价值、原则和实施步骤介绍混沌工程,然后分享混沌工程如何在企业中落地,最后介绍分布式服务下混沌工程实践案例。我们先来看一下什么是混沌工程。

640?wx_fmt=png混沌工程理论一文中提到,其是在分布式系统上进行实验的学科,核心目的是提高生产环境中系统的容错性和可恢复性。尼采的这句话: "打不倒我的必使我强大",也很好的诠释了混沌工程反脆弱的思想。除了这里提到的目的,实施混沌工程还有哪些价值呢?

640?wx_fmt=png这里我从四个角色来说明,对于架构师来说,可以验证系统架构的容错能力,比如验证现在提倡的面向失败设计的系统;对于开发和运维,可以提高故障的应急效率,实现故障告警、定位、恢复的有效和高效性。对于测试来说,可以弥补传统测试方法留下的空白,之前的测试方法基本上是从用户的角度去做,而混沌工程是从系统的角度进行测试,降低故障复发率。对于产品和设计,通过混沌事件查看产品的表现,提升客户使用体验。所以说混沌工程面向的不仅仅是开发、测试,拥有最好的客户体验是每个人的目标。我们知道,系统发生故障的那一刻不是由你来选择的,而是那一刻选择你,你所能做,只能是为之做好准备。了解了混沌工程的价值,我们再来看一下实施混沌工程的一些原则。

640?wx_fmt=png前面 Vilas 老师也提到了,我这里重点来介绍一下这五项原则。第一条:”建立一个围绕稳定状态行为的假说“,其包含两个含义,一个是定义能直接反应业务服务的监控指标,需要注意的是这里的监控指标并不是系统资源指标,比如CPU、内存等,这里的监控指标是能直接衡量系统服务质量的业务监控。举个例子,一个调用延迟故障,请求的 RT 会变长,对上层交易量造成下跌的影响,那么这里交易量就可以作为一个监控指标。这条原则的另一个含义是故障触发时,对系统行为作出假设以及监控指标的预期变化。第二个指模拟生产环境中真实的或有理论依据的故障,第三个建议在生产环境中运行实验,但也不是说必须在生产环境中执行,只是实验环境越真实,混沌工程越有价值。持续的执行才能持

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值