京东混沌演练实践
摘自: https://developer.jdcloud.com/article/2725 https://developer.jdcloud.com/article/2953 混沌工程介绍什么是混沌工程混沌工程是通过主动制造故障场景并根据系统在各种压力下的行为表现确定优化策略的一种系统稳定性保障手段,简单说就是通过主动注入故障的方式、提前发现问题,然后解决问题规避风险。 为什么要进行混沌演练随着互联网业务发展,微服务架构、分布式架构和虚拟化容器技术的广泛普及,软件架构的复杂度在不断提升,服务之间的依赖所带来的不确定性也成指数级增长,在这样的服务调用网中,任何一环出现的正常或者异常的变化,都有可能对其他服务造成类似蝴蝶效应一般的影响。目前营销体系的服务量级不断增加,整体链路增长以及数据流转复杂,对整个系统的可用性、稳定性挑战也越来越大,所以引入混沌演练,主动找出系统中的脆弱环节,然后针对性地进行加固、防范,从而避免故障发生时所带来的严重后果,进一步提升业务系统的高可用,提高业务系统应急保障能力。 混沌演练的价值应用混沌演练可以对系统抵抗扰动并保持正常运作的能力进行校验和评估...
混沌工程和故障演练
前言微服务架构场景中,应用系统复杂切分散。长期运行时,局部出现故障时不可避免的。如果发生故障时不能进行有效反应,系统的可用性将极大地降低。 什么是故障演练 故障演练是指模拟生产环境中可能出现的故障,测试系统或应用在面对故障时的反应和响应能力。 故障演练可以模拟各种故障情况(网络故障、数据库故障、服务过载,CPU或内存异常等)。 什么是混沌工程 混沌工程是稳定性方面的工程学科,英文叫作 Chaos Engineering,是由网飞公司最先提出的,因为最开始混沌工程被叫作 Chaos Monkey, 就像一只猴子在系统中捣乱一样,以至于到现在每次出现混沌工程都会提及一只捣乱的猴子的比喻。但是稳定性测试却不是网飞独创的,在混沌工程之前,就 已经有很多关于稳定性方面的研究了。随着测试系统的业务逻辑越来越复杂,交付团队不断地通过细化测试、增加发布环节以及各种流程管控,来保障的系统 的稳定性,但是的系统还是会出现各式各样的故障,混沌工程就是本着提早暴露系统脆弱环节的理念,以提高系统的稳定性为目的而出现的。 为什么需要故障演练故障演练是微服务架构下非常重要的实践,用以测试系统或应用在面对故...
