CN113238950A - 一种分布式系统测试的系统及方法、存储介质、电子设备 - Google Patents
一种分布式系统测试的系统及方法、存储介质、电子设备 Download PDFInfo
- Publication number
- CN113238950A CN113238950A CN202110550976.6A CN202110550976A CN113238950A CN 113238950 A CN113238950 A CN 113238950A CN 202110550976 A CN202110550976 A CN 202110550976A CN 113238950 A CN113238950 A CN 113238950A
- Authority
- CN
- China
- Prior art keywords
- target database
- abnormal
- anomaly
- information
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000002159 abnormal effect Effects 0.000 claims abstract description 61
- 238000011084 recovery Methods 0.000 claims abstract description 47
- 238000001514 detection method Methods 0.000 claims abstract description 41
- 238000004088 simulation Methods 0.000 claims abstract description 31
- 238000012795 verification Methods 0.000 claims abstract description 13
- 230000015654 memory Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 16
- 238000002347 injection Methods 0.000 claims description 15
- 239000007924 injection Substances 0.000 claims description 15
- 230000000739 chaotic effect Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 230000005856 abnormality Effects 0.000 claims description 10
- 238000007726 management method Methods 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000000694 effects Effects 0.000 abstract description 8
- 238000012546 transfer Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 7
- 239000000243 solution Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005034 decoration Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013524 data verification Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种分布式系统测试的系统及方法、存储介质、电子设备。其中,该方法通过负载均衡器对目标数据库下发模拟业务;对进行模拟业务的所述目标数据库注入异常信息;对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复,在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果,进而解决了相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题,达到了提高分布式数据库系统的性能、稳定性和容错能力的技术效果。
Description
技术领域
本发明涉及分布式系统领域,具体而言,涉及一种分布式系统测试的系统及方法、存储介质、电子设备。
背景技术
随着金融行业IT架构转型,以及业务发展对数据库并发处理能力的更高要求,传统集中式数据库逐渐成为性能瓶颈。同时随着分布式技术快速发展,X86服务器和高端存储方面的问题逐步得到解决,使用开源、开放的分布式技术来支撑银行核心业务系统的条件已具备可行性,分布式数据库技术已经逐渐成熟。
为了验证分布式数据库的功能、性能和可靠性等方面满足金融应用的要求,需要进行大量的测试验证。然而,现有测试方法利用混沌工程工具时测试场景都相对确定,不能够很好地体现混沌工程的思想,即只有在不知道接下来系统会发生什么故障的时候才能够获得“意想不到”的效果,仅能够覆盖大部分正常场景的功能测试和一部分异常场景的测试,很难挖掘出隐藏的、不确定的缺陷和不足。
针对相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障,尚未存在较好的解决方案。
发明内容
本发明实施例提供了一种分布式系统测试的系统及方法、存储介质、电子设备,以至少解决相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题。
根据本发明实施例的一个方面,提供了一种分布式系统测试的系统,包括:
业务模拟模块,用于通过负载均衡器对目标数据库下发模拟业务;
异常注入模块,用于对进行模拟业务的目标数据库注入异常信息;
异常恢复模块,用于对目标数据库进行异常检测,当检测出异常时则进行异常恢复;
业务校验模块,用于完成异常恢复后,对目标数据库进行业务校验以获取异常测试结果。
根据本发明实施例的另一方面,还提供了一种分布式系统测试的方法,包括:
通过负载均衡器对目标数据库下发模拟业务;
对进行模拟业务的目标数据库注入异常信息;
对目标数据库进行异常检测,当检测出异常时则进行异常恢复;
在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述分布式系统测试的方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述分布式系统测试的方法。
在本发明实施例中,通过负载均衡器对目标数据库下发模拟业务;对进行模拟业务的所述目标数据库注入异常信息;对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复,在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果,进而解决了相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题,达到了提高分布式数据库系统的性能、稳定性和容错能力的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的分布式系统测试的方法流程图;
图2是根据本发明实施例的分布式系统测试的系统结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种分布式系统测试的方法,可选地,作为一种可选的实施方式,本实施例中的分布式系统测试的方法可以通过计算机程序的方式执行,并且,可以应用在终端或者服务器或者类似的运算装置或者电子设备中。示例性的,该运算装置或者电子设备可以包括一个或多个处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器,还可以包括用于通信功能的传输设备以及输入输出设备。还可以包括比前述更多或者更少的组件,或者具有与前述所示不同的配置。存储器可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的分布式系统测试的方法对应的计算机程序,处理器通过运行存储在存储器内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。传输装置用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
示例性的,作为一种可选的实施方式,图1是根据本发明实施例的分布式系统测试的方法的流程图,如图1所示,该方法包括:
步骤S101,通过负载均衡器对目标数据库下发模拟业务;
其中,可以通过负载均衡器对一个目标数据库下发模拟业务,也可以同时对多个目标数据库下发模拟业务,该目标数据库为分布式数据库;下发模拟业务为持续下发的机制,该模拟业务用于模拟各类银行业务开展,以构建测试场景。
步骤S103,对进行模拟业务的目标数据库注入异常信息;
其中,优选的可以向目标数据库中的所有模块遍历所有异常列表中的异常;也可以对其中多个指定的模块进行异常信息注入,注入异常信息可以是随机构造的若干个异常信息。
步骤S105,对目标数据库进行异常检测,当检测出异常时则进行异常恢复;
其中,当注入异常后,则对目标数据库进行异常检测,用以检测异常给目标数据库带来的影响是否合理;如出现异常影响到模拟业务,则停止测试,且对数据核对有影响的异常需要进行恢复。
步骤S107,在异常恢复后,对目标数据库进行业务校验,获取异常测试结果;
其中,进行业务校验优选在模拟业务的空闲期,当异常恢复后,则对比异常注入前的第一检测信息,和异常注入后的第二检测信息,若第一检测信息和第二检测信息一致,则认为目标数据库系统无异常并继续进行下一轮测试;
若第一检测信息和第二检测信息不一致,则停止测试,并认为目标数据库系统出现异常故障。
在一个示例性的实施方式中,对进行模拟业务的目标数据库注入异常信息包括:
对目标数据库注入混沌异常信息,混沌异常信息包括对目标数据库的组件模块注入的随机构造的异常信息;具体地,混沌异常信息注入可以随机选择若干目标数据库的一个或多个组件注入随机构造的若干个异常信息;
或者对目标数据库注入异常遍历信息,异常遍历信息包括目标数据库组件的异常组合遍历信息;具体地,异常遍历信息注入可以完成异常和目标数据库组件的组合遍历测试。
通过上述步骤,通过负载均衡器对目标数据库下发模拟业务;对进行模拟业务的所述目标数据库注入异常信息;对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复,在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果,进而解决了相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题,达到了提高分布式数据库系统的性能、稳定性和容错能力的技术效果。
下面通过一个具体实施场景来用于进一步说明:
以银行转账业务为例,先模拟该业务持续不断的下发转账业务,其中转账方式可以为顺序转账或随机转账两者之间的组合。
顺序转账,每笔转账后可以自动检验该笔转账数据一致性,所有账户都执行一次转账为一轮,然后循环从第一个账户重新开始转账。每一轮结束后,自动执行一次总账核对,检验全表数据一致性。
随机转账,没有转账次数限制,由于可能存在同一时刻一个账户被随机到多次,无法检验每笔转账的数据一致性;定时让随机转账业务空闲一段时间,在空闲期做总账核对,检验全表数据一致性。
进行异常注入,其中注入方式为:
混沌异常注入接口中,随机获取n个待注入异常的模块信息;
然后起n个并发进程,每个进程中设置一个rand_sleep(),随机暂停一段时间;
每个进程函数中随机m个异常信息,每个异常信息起一个线程去执行,每个线程中设置一个rand_sleep(),随机暂停一段时间,然后执行异常制造。
在测试过程中发现异常时,需要对异常进行自动恢复,然后检验数据的一致性,所以恢复流程要符合安全操作标准,才能保证检验结果的准确性,恢复方法为异常的恢复策略如下:每个异常持续一段时间后,先尝试自动恢复,无法自动化恢复的,最后统一恢复;其中统一恢复流程:
1)先检验、恢复元数据库,可以正常访问元数据库
2)然后检验、恢复管理节点,管理节点进程、链路状态正常
3)再检验、恢复事务节点,管理节点进程、链路状态正常
4)再检验、恢复所有数据存储节点,链路状态、主备复制关系正常
5)最后检验、恢复所有计算节点,链路状态、连接实例端口监听正常
6)网络异常是否清理干净
完成恢复后,再进行一次数据校验。若结果为数据不一致,则认为出现故障,系统出现BUG,并反馈给操作人员以进行修复。
本发明实施例还提供了一种分布式系统测试的系统,该系统用于实现上述实施例及优选实施方式。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图2是根据本发明实施例的分布式系统测试系统的系统结构框图,如图2所示,该系统包括:
业务模拟模块22,用于通过负载均衡器对目标数据库下发模拟业务;
异常注入模块24,用于对进行模拟业务的目标数据库注入异常信息;
异常恢复模块26,用于对目标数据库进行异常检测,当检测出异常时则进行异常恢复;
业务校验模块28,用于完成异常恢复后,对目标数据库进行业务校验以获取异常测试结果;
在一个示例性的实施方式中,异常注入模块,用于对进行模拟业务的目标数据库注入异常信息,包括:
对目标数据库注入混沌异常信息,混沌异常信息包括对目标数据库的组件模块注入的随机构造的异常信息;或者对目标数据库注入异常遍历信息,异常遍历信息包括目标数据库组件的异常组合遍历信息。
在一个示例性的实施方式中,在对目标数据库进行异常检测之前,异常恢复模块还包括:
对目标数据库故障注入前进行异常检测,并将检测结果保存为第一检测信息。
在一个示例性的实施方式中,异常恢复模块,用于对目标数据库进行异常检测,当检测出异常时则进行异常恢复,包括:
对目标数据库进行异常检测,并将检测结果保存为第二检测信息;
当出现异常时,则停止检测并进行异常恢复。
在一个示例性的实施方式中,业务校验模块,用于完成异常恢复后,对目标数据库进行业务校验以获取异常测试结果,包括:
对比第一检测信息和第二检测信息,
当对比结果为一致时,则进行下一轮循环测试;
当对比结果为不一致时,则判断出现异常。
在一个示例性的实施方式中,异常恢复模块具体包括:
进行系统自动恢复;
若系统自动恢复失败,则进行统一恢复,其中统一恢复包括:
检验并恢复元数据库,使正常访问元数据库;
检验并恢复管理节点和业务节点,直至管理节点和业务节点进程、链路状态正常;
再检验、恢复所有数据存储节点,直至链路状态、主备复制关系正常;
最后检验、恢复所有计算节点,直至链路状态、连接实例端口监听正常;
在统一恢复后,对目标数据库继续下发模拟业务。
通过上述步骤,通过负载均衡器对目标数据库下发模拟业务;对进行模拟业务的所述目标数据库注入异常信息;对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复,在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果,进而解决了相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题,达到了提高分布式数据库系统的性能、稳定性和容错能力的技术效果。
还需要说明的是,其他具备相同效果的实施方式也可适用于本方案,此处不再赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例的又一个方面,还提供了一种用于实施上述分布式系统测试的方法的电子设备,该电子设备包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,通过负载均衡器对目标数据库下发模拟业务;
S2,按照对进行模拟业务的目标数据库注入异常信息;
S3,对目标数据库进行异常检测,当检测出异常时则进行异常恢复;
S4,在异常恢复后,对目标数据库进行业务校验,获取异常测试结果。
通过上述步骤,通过负载均衡器对目标数据库下发模拟业务;对进行模拟业务的所述目标数据库注入异常信息;对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复,在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果,进而解决了相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题,达到了提高分布式数据库系统的性能、稳定性和容错能力的技术效果。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的分布式系统测试的方法和系统对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器具体可以但不限于用于存储物品的样本特征与目标虚拟资源账号等信息。
可选地,上述的传输装置用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,通过负载均衡器对目标数据库下发模拟业务;
S2,按照对进行模拟业务的目标数据库注入异常信息;
S3,对目标数据库进行异常检测,当检测出异常时则进行异常恢复;
S4,在异常恢复后,对目标数据库进行业务校验,获取异常测试结果。
通过上述步骤,通过负载均衡器对目标数据库下发模拟业务;对进行模拟业务的所述目标数据库注入异常信息;对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复,在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果,进而解决了相关技术中如何发现分布式系统业务场景中隐藏和不确定的故障的技术问题,达到了提高分布式数据库系统的性能、稳定性和容错能力的技术效果。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种分布式系统测试的系统,其特征在于,包括:
业务模拟模块,用于通过负载均衡器对目标数据库下发模拟业务;
异常注入模块,用于对进行模拟业务的所述目标数据库注入异常信息;
异常恢复模块,用于对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复;
业务校验模块,用于完成异常恢复后,对所述目标数据库进行业务校验以获取异常测试结果。
2.根据权利要求1所述的系统,其特征在于,所述异常注入模块,用于对进行模拟业务的所述目标数据库注入异常信息,包括:
对所述目标数据库注入混沌异常信息,所述混沌异常信息包括对所述目标数据库的组件注入的随机构造的异常信息;或者对所述目标数据库注入异常遍历信息,所述异常遍历信息包括所述目标数据库组件的异常组合遍历信息。
3.根据权利要求1所述的系统,其特征在于,在对所述目标数据库进行异常检测之前,所述异常恢复模块还包括:
对所述目标数据库故障注入前进行异常检测,并将检测结果保存为第一检测信息。
4.根据权利要求3所述的系统,其特征在于,所述异常恢复模块,用于对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复包括:
对所述目标数据库进行异常检测,并将检测结果保存为第二检测信息;
当出现异常时,则停止检测并进行异常恢复。
5.根据权利要求4所述的系统,其特征在于,所述业务校验模块,用于完成异常恢复后,对所述目标数据库进行业务校验以获取异常测试结果包括:
对比所述第一检测信息和所述第二检测信息,
当对比结果为一致时,则进行下一轮循环测试;
当对比结果为不一致时,则判断出现异常。
6.根据权利要求1或5所述的系统,其特征在于,所述异常恢复模块具体包括:
进行系统自动恢复;
若所述系统自动恢复失败,则进行统一恢复,其中所述统一恢复包括:
检验并恢复元数据库,使正常访问元数据库;
检验并恢复管理节点和业务节点,直至管理节点和业务节点进程、链路状态正常;
再检验、恢复所有数据存储节点,直至链路状态、主备复制关系正常;
最后检验、恢复所有计算节点,直至链路状态、连接实例端口监听正常;
在所述统一恢复后,对所述目标数据库继续下发模拟业务。
7.一种分布式系统测试的方法,其特征在于,包括:
通过负载均衡器对目标数据库下发模拟业务;
对进行模拟业务的所述目标数据库注入异常信息;
对所述目标数据库进行异常检测,当检测出异常时则进行异常恢复;
在异常恢复后,对所述目标数据库进行业务校验,获取异常测试结果。
8.根据权利要求7所述的方法,其特征在于,所述对进行模拟业务的所述目标数据库注入异常信息包括:
对所述目标数据库注入混沌异常信息,所述混沌异常信息包括对所述目标数据库的组件注入的随机构造的异常信息;或者对所述目标数据库注入异常遍历信息,所述异常遍历信息包括所述目标数据库组件的异常组合遍历信息。
9.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求7至8任意一项中所述的方法。
10.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求7至8任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110550976.6A CN113238950A (zh) | 2021-05-20 | 2021-05-20 | 一种分布式系统测试的系统及方法、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110550976.6A CN113238950A (zh) | 2021-05-20 | 2021-05-20 | 一种分布式系统测试的系统及方法、存储介质、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113238950A true CN113238950A (zh) | 2021-08-10 |
Family
ID=77137811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110550976.6A Pending CN113238950A (zh) | 2021-05-20 | 2021-05-20 | 一种分布式系统测试的系统及方法、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113238950A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115834404A (zh) * | 2022-11-08 | 2023-03-21 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种混沌演练方法、装置及计算机可读介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268365A (zh) * | 2016-12-30 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 异常任务注入方法、装置和系统 |
CN108415835A (zh) * | 2018-02-22 | 2018-08-17 | 北京百度网讯科技有限公司 | 分布式数据库测试方法、装置、设备及计算机可读介质 |
CN108833131A (zh) * | 2018-04-25 | 2018-11-16 | 北京百度网讯科技有限公司 | 分布式数据库云服务的系统、方法、设备和计算机存储介质 |
CN111400182A (zh) * | 2020-03-16 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 故障注入方法、装置、服务器及计算机可读存储介质 |
CN111448553A (zh) * | 2017-12-08 | 2020-07-24 | 华为技术有限公司 | 故障注入系统和故障注入方法 |
CN111506495A (zh) * | 2020-03-02 | 2020-08-07 | 平安科技(深圳)有限公司 | 基于springboot框架的分布式系统测试方法和装置 |
CN111831569A (zh) * | 2020-07-22 | 2020-10-27 | 平安普惠企业管理有限公司 | 基于故障注入的测试方法、装置、计算机设备和存储介质 |
CN112698974A (zh) * | 2019-10-22 | 2021-04-23 | 中兴通讯股份有限公司 | 故障注入测试方法、装置和存储介质 |
-
2021
- 2021-05-20 CN CN202110550976.6A patent/CN113238950A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268365A (zh) * | 2016-12-30 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 异常任务注入方法、装置和系统 |
CN111448553A (zh) * | 2017-12-08 | 2020-07-24 | 华为技术有限公司 | 故障注入系统和故障注入方法 |
CN108415835A (zh) * | 2018-02-22 | 2018-08-17 | 北京百度网讯科技有限公司 | 分布式数据库测试方法、装置、设备及计算机可读介质 |
CN108833131A (zh) * | 2018-04-25 | 2018-11-16 | 北京百度网讯科技有限公司 | 分布式数据库云服务的系统、方法、设备和计算机存储介质 |
CN112698974A (zh) * | 2019-10-22 | 2021-04-23 | 中兴通讯股份有限公司 | 故障注入测试方法、装置和存储介质 |
CN111506495A (zh) * | 2020-03-02 | 2020-08-07 | 平安科技(深圳)有限公司 | 基于springboot框架的分布式系统测试方法和装置 |
CN111400182A (zh) * | 2020-03-16 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 故障注入方法、装置、服务器及计算机可读存储介质 |
CN111831569A (zh) * | 2020-07-22 | 2020-10-27 | 平安普惠企业管理有限公司 | 基于故障注入的测试方法、装置、计算机设备和存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115834404A (zh) * | 2022-11-08 | 2023-03-21 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种混沌演练方法、装置及计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110389900B (zh) | 一种分布式数据库集群测试方法、装置及存储介质 | |
CN113206763B (zh) | 一种适应于物联管理平台的仿真测试系统及方法 | |
CN112631846B (zh) | 一种故障演练方法、装置、计算机设备及存储介质 | |
CN111274077A (zh) | 一种磁盘阵列可靠性测试方法、系统、终端及存储介质 | |
CN111881014B (zh) | 一种系统测试方法、装置、存储介质及电子设备 | |
CN110225078B (zh) | 一种应用服务更新方法、系统及终端设备 | |
CN110581785B (zh) | 一种可靠性评估方法和装置 | |
CN110557299A (zh) | 一种网络传输功能批量测试方法、系统、终端及存储介质 | |
CN110659202A (zh) | 客户端自动化测试方法及装置 | |
CN111371599A (zh) | 一种基于etcd的集群容灾管理系统 | |
CN107621963B (zh) | 一种软件部署方法、软件部署系统及电子设备 | |
CN105512562B (zh) | 一种漏洞挖掘方法、装置及电子设备 | |
CN107516547A (zh) | 内存硬错误的处理方法及装置 | |
CN114237994A (zh) | 用于分布式系统的测试方法及系统、电子设备及存储介质 | |
CN111327490A (zh) | 区块链的拜占庭容错检测方法及相关装置 | |
CN116700884A (zh) | 快照回滚数据一致性测试方法、装置、设备及介质 | |
CN113238950A (zh) | 一种分布式系统测试的系统及方法、存储介质、电子设备 | |
CN107679423A (zh) | 分区完整性检查方法及装置 | |
CN113064755B (zh) | 数据恢复方法、装置、设备、介质及程序产品 | |
CN109933351A (zh) | 一种修复和升级Linux系统的方法与装置 | |
CN114996955A (zh) | 一种云原生混沌工程实验的靶场环境构建方法及装置 | |
CN112256500B (zh) | 存储系统测试服务器配置方法、系统、终端及存储介质 | |
Chen et al. | Big data system testing method based on chaos engineering | |
CN111737130B (zh) | 公有云多租户认证服务测试方法、装置、设备及储存介质 | |
CN112241359B (zh) | 一种设备测试方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |