作者:丁源 RadonDB 测试负责人
负责 RadonDB 云数据库、容器化数据库的质量性能测试,迭代验证。对包括云数据库以及容器化数据库性能和高可用方案有深入研究。
近日,国内多家网站同时发生短期服务不可用现象,一夜冲上圈内热搜。据官方答复,是由于部分服务器机房发生故障,导致网站无法访问。为了避免这种情况,提高系统架构的可靠性,保障业务的连续性,希望能在故障之前找到导致 “崩盘” 的缺口。
十多年前,国外的互联网公司就已经在云化、分布式、微服务等前沿技术的使用过程中,遇到了类似的问题,并由此诞生了混沌工程。
什么是混沌工程?
混沌工程即 Chaos Engineering[1],被定义为 在分布式系统上进行实验的学科,目的是建立对系统抵御生产环境中失控条件的能力以及信心。混沌工程属于一门新兴的技术学科,是一种提高技术架构弹性能力的复杂技术手段。最早由 Netflix 技术部门创建了名为 Chaos Monkey 的项目,通过随机性测试,来检测系统架构的健康情况,并设计足够的预案来应对可能到来的新一轮故障。
随着云化技术的发展和云原生(Cloud Native)的概念的提出,混沌工程的反脆弱哲学思想,也引入了云原生体系,可简单高效地为系统提高容错能力。