在分布式架构下,系统组网复杂,异常类型众多,组件耦合性高,如何保障分布式数据库系统安全可靠,如何建立一个有效的评测体系来验证系统是否安全可靠。
在传统的高可用测试方案中,通常从用户的视角通过穷举方式将所有异常场景列举出来,然后依次模拟测试。但在分布架构下,异常场景会呈现指数级增长,常规UT\FT\ST\性能测试对于分布式系统来说还远远不够,仍然无法保证系统能够应对生产环境的各种不可预测性,因此,我们需要一种方法来模拟不可预知的故障,并测试我们对这些故障的反应。
为了解决分布式数据库产品测试过程中的上述困惑,引入了混沌测试的思想,研发一款混沌测试工具变得势在必行。分布式数据库产品混沌测试工具需要具备如下基本功能:
异常注入功能,工具可以往正在运行的分布式系统中按照既定的规则有计划或随机的持续注入一种或多种异常。
异常恢复功能,异常注入之后,需要具备异常自动恢复能力。
系统正确性校验接口,异常注入之后,需要有一套评价标准评判系统表现是否满足预期,工具需要开发接口与评判系统建立接口,以便在校验通过的情况下继续运行,在校验失败的停下来排查故障。
测试报告功能,工具运行过程中详细记录运行日志,收集相关信息,最终输出运行报告,供测试人员根据报告给出测试结论。
GoldenDB混沌测试平台工具SUPERMAN
针对是分布式架构下,提升GoldenDB分布式数据库产品的系统健壮性。2018年结合混沌理论我们研发了一款混沌测试工具SUPERMAN。经过长时间的打磨和验证,到目前为止SUPERMAN已经到了2.0版本,已经实现了2000+条异常测试用例,支持了多维度异常用例的连续导入,实现自动化的测试分析。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




