一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种分布式数据库非功能测试方法及系统与流程

2022-03-23 09:18:26 来源:中国专利 TAG:


1.本发明涉及数据库测试和数据处理技术领域,尤其涉及一种分布式数据库非功能测试方法及系统。


背景技术:

2.传统数据库对硬件基础设施要求较高,同时只能纵向扩展,无法横向扩展,容易达到性能上限;分库分表虽然可以横向扩展,但是不支持复杂sql,较难保证分布式事务的acid。分布式数据库可以有效的解决这些问题,且具有低硬件成本、高可扩展性、高可用性等特性。
3.基于这些特性,分布式数据库为分布式银行系统提供了负载均衡、数据可靠及高可用、分布式事务。分布式银行核心系统特殊交易场景下的特点包括:(1)访问数据库次数多的复杂交易;(2)sql语句复杂的交易;(3)涉及跨多个账号的复杂交易;(4)涉及多个数据分片的复杂交易;(5)涉及热点数据的交易。
4.因此,如何充分测试分布式数据库,保证分布式数据库集群能够为分布式银行核心系统提供高可靠、高性能、高可用的服务,是具有重要意义的。


技术实现要素:

5.为解决现有技术的不足,本发明提出一种分布式数据库非功能测试方法及系统,针对分布式数据库的特点,通过多层次多阶段的针对性测试方法,保证国产数据库集群能够为分布式银行核心系统提供高可靠、高性能、高可用的服务。
6.为实现以上目的,本发明所采用的技术方案包括:
7.一种分布式数据库非功能测试方法,其特征在于,包括:
8.s1、配置分布式数据库的访问路径分类;
9.s2、配置分布式数据库的交易场景分类;
10.s3、设置非功能测试的背景压力;
11.s4、根据交易场景分类设置对应的测试扰动集合,所述测试扰动集合包括一种或多种测试扰动,所述测试扰动包含对应访问路径分类的路径标签;
12.s5、选择待测试项目,匹配待测试项目所属的交易场景分类;
13.s6、载入背景压力,根据待测试项目所属的交易场景分类选择对应的测试扰动集合;
14.s7、设置进行测试的访问路径,根据路径标签从测试扰动集合中选择匹配的测试扰动;
15.s8、使用测试扰动执行非功能测试;
16.s9、重复执行步骤s5至s8,对全部待测试项目进行非功能测试。
17.进一步地,所述访问路径分类包括非分布式核心直接访问、分布式核心直接访问、非分布式核心访问分布式核心、分布式核心访问非分布式核心和分布式核心跨地域中心访
问。
18.进一步地,所述交易场景分类包括普通查询类、复杂查询类、网联消费类、网联提现类、消费类、取款类、转账类和维护类。
19.进一步地,所述步骤s3包括:
20.获取分布式核心在一般营业日业务场景下各交易的占比及平均响应时间,组成非功能测试的背景压力。
21.进一步地,所述根据路径标签从测试扰动集合中选择匹配的测试扰动包括:
22.从测试扰动集合中选择匹配的一个测试扰动;
23.或,从测试扰动集合中选择匹配的多个测试扰动。
24.进一步地,所述步骤s8包括分步骤:
25.s81、在背景压力下稳定运行待测试项目;
26.s82、引入测试扰动,记录测试扰动下工作日志;
27.s83、排出测试扰动,判断待测试项目是否回复稳定运行。
28.进一步地,所述分步骤s82还包括:
29.当存在多个测试扰动时,逐一引入各测试扰动,或,同步引入所有测试扰动。
30.本发明还涉及一种分布式数据库非功能测试系统,其特征在于,包括:
31.访问路径配置模块,用于配置分布式数据库的访问路径分类;
32.交易场景配置模块,用于配置分布式数据库的交易场景分类;
33.背景压力生成模块,用于设置非功能测试的背景压力;
34.测试扰动配置模块,用于根据交易场景分类设置对应的测试扰动集合;
35.第一匹配模块,用于匹配待测试项目所属的交易场景分类;
36.第二匹配模块,用于根据待测试项目所属的交易场景分类选择对应的测试扰动集合,并根据路径标签从测试扰动集合中选择匹配的测试扰动;
37.执行模块,用于使用测试扰动执行非功能测试。
38.本发明还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
39.本发明还涉及一种电子设备,其特征在于,包括处理器和存储器;
40.所述存储器,用于存储访问路径分类、交易场景分类和测试扰动集合;
41.所述处理器,用于通过调用访问路径分类、交易场景分类和测试扰动集合,执行上述的方法。
42.本发明还涉及一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现上述方法的步骤。
43.本发明的有益效果为:
44.采用本发明所述分布式数据库非功能测试方法及系统,针对分布式数据库的特点,通过多层次多阶段的针对性测试方法,包括数据库的灾备容错能力、数据库的一致性能力、数据库的横向扩展能力和数据库自动化运维能力,故障发生后服务能够熔断或降级,并能在故障恢复后恢复相应服务,保证国产数据库集群能够为分布式银行核心系统提供高可靠、高性能、高可用的服务。
附图说明
45.图1为本发明分布式数据库非功能测试方法流程示意图。
46.图2为本发明分布式数据库非功能测试系统结构示意图。
具体实施方式
47.为了更清楚的理解本发明的内容,将结合附图和实施例详细说明。
48.本发明第一方面涉及一种步骤流程如图1所示的分布式数据库非功能测试方法,包括:
49.s1、配置分布式数据库的访问路径分类。
50.其中,访问路径分类包括非分布式核心直接访问、分布式核心直接访问、非分布式核心访问分布式核心、分布式核心访问非分布式核心和分布式核心跨地域中心访问。
51.例如,客户账号a数据分布在北京某中心数据库,客户在武汉发起涉及账号a的未下移交易,对应非分布式核心直接访问分类;客户账号a数据位于北京某中心,客户在武汉发起涉及账号a的已下移交易,过程中又涉及调用未下移核心交易对应分布式核心访问非分布式核心分类;客户账号a数据位于现状核心,账号b数据位于武汉某中心分布式核心,客户在北京发起账号a向账号b的转账交易对应非分布式核心访问分布式核心分类;客户账号a数据分布在北京某中心数据库,客户在北京发起账号a的分布式已下移交易对应分布式核心直接访问分类;客户账号a数据分布在武汉某中心,账号b数据分布在北京某中心,客户在北京发起账号a向账号b的转账交易(涉及交易均已下移)对应分布式核心跨地域中心访问分类。
52.s2、配置分布式数据库的交易场景分类。
53.其中,交易场景分类包括普通查询类、复杂查询类、网联消费类、网联提现类、消费类、取款类、转账类和维护类。
54.当然,根据分布式数据库的实际使用方式和应用环境,可以适应性的调整交易场景分类,该交易场景分类的主要作用是区分用于测试的测试扰动,以便在测试过程中能够选择执行正确有效的测试扰动。
55.s3、设置非功能测试的背景压力。具体的,可以获取分布式核心在一般营业日业务场景下各交易的占比及平均响应时间,组成非功能测试的背景压力。
56.s4、根据交易场景分类设置对应的测试扰动集合,所述测试扰动集合包括一种或多种测试扰动,所述测试扰动包含对应访问路径分类的路径标签。
57.对于测试扰动,可以包括如宕机(主节点、副节点)、进程停止、进程挂起、网卡禁用等对分布式数据库存在较大影响的异常情况,也可以是任意其他需要进行测试的项目,例如用户多次登录错误、外部网络攻击等。
58.对应交易场景分类,可以将不同的测试扰动进行组合形成测试扰动集合,该集合即对应特定交易场景分类能够产生影响(或认为可能产生影响)的重要扰动。对于影响不明显的其他扰动,排除在集合以外,可以减少测试时的运行计算压力,同时不会影响测试结果。
59.另一方面,通过对测试扰动添加路径标签,使处于集合中的测试扰动同时具备了访问路径和交易场景的对应属性,能够实现更加有针对性的非功能测试。
60.s5、选择待测试项目,匹配待测试项目所属的交易场景分类。
61.优选的,分布式数据库的主要待测试项目包括计算节点集群有效性、数据节点主从副本故障有效性、全局流量管理节点主备切换有效性、管理节点集群有效性和灾备切换有效性。
62.s6、载入背景压力,根据待测试项目所属的交易场景分类选择对应的测试扰动集合。
63.对应不同测试项目,选择对应的访问路径、交易场景,进而匹配得到可使用的测试扰动。优选的,当有多个测试扰动时,可以依次分别进行测试,也可以一次同时施加多个测试扰动综合测试。
64.s7、设置进行测试的访问路径,根据路径标签从测试扰动集合中选择匹配的测试扰动。
65.优选的,匹配得到的测试扰动可能是一个,也可能是多个不同的,只要符合路径标签的匹配关系,就应选择为匹配的测试扰动。
66.s8、使用测试扰动执行非功能测试,具体包括:
67.s81、在背景压力下稳定运行待测试项目;
68.s82、引入测试扰动,记录测试扰动下工作日志,且当存在对个测试扰动时,可以选择逐一引入各测试扰动,或,同步引入所有测试扰动;
69.s83、排出测试扰动,判断待测试项目是否回复稳定运行。
70.例如,对于计算节点集群有效性项目,选择宕机的测试扰动,可以执行如下步骤:
71.1)发起场景压力,用发压工具,按照一般营业日业务场景容量配比进行发压,tps稳定后运行5分钟,联机业务正常处理;
72.2)节点宕机,执行命令:date;reboot,观察场景中各交易错误率、处理能力、响应时间及各主机资源情况,待tps恢复后场景持续运行5分钟;
73.3)开起计算节点进程date;./dbstart;
74.4)所有故障机器都恢复完成,联机业务正常处理。
75.s9、重复执行步骤s5至s8,对全部待测试项目进行非功能测试。
76.本发明另一方面还涉及一种分布式数据库非功能测试系统,其结构如图2所示,包括:
77.访问路径配置模块,用于配置分布式数据库的访问路径分类;
78.交易场景配置模块,用于配置分布式数据库的交易场景分类;
79.背景压力生成模块,用于设置非功能测试的背景压力;
80.测试扰动配置模块,用于根据交易场景分类设置对应的测试扰动集合;
81.第一匹配模块,用于匹配待测试项目所属的交易场景分类;
82.第二匹配模块,用于根据待测试项目所属的交易场景分类选择对应的测试扰动集合,并根据路径标签从测试扰动集合中选择匹配的测试扰动;
83.执行模块,用于使用测试扰动执行非功能测试。
84.通过使用该系统,能够执行上述的运算处理方法并实现对应的技术效果。
85.本发明的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执
行时实现上述实施例中的方法的全部步骤。
86.本发明的实施例还提供一种用于执行上述方法的电子设备,作为该方法的实现装置,所述电子设备至少具备有处理器和存储器,特别是该存储器上存储有执行方法所需的数据和相关的计算机程序,例如访问路径分类、交易场景分类和测试扰动集合等,并通过由处理器调用存储器中的数据、程序执行实现方法的全部步骤,并获得对应的技术效果。
87.优选的,该电子设备可以包含有总线架构,总线可以包括任意数量的互联的总线和桥,总线将包括由一个或多个处理器和存储器的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和接收器和发送器之间提供接口。接收器和发送器可以是同一个元件,即收发机,提供用于在传输介质上与各种其他系统通信的单元。处理器负责管理总线和通常的处理,而存储器可以被用于存储处理器在执行操作时所使用的数据。
88.额外的,所述电子设备还可以进一步包括通信模块、输入单元、音频处理器、显示器、电源等部件。其所采用的处理器(或称为控制器、操作控件)可以包括微处理器或其他处理器装置和/或逻辑装置,该处理器接收输入并控制电子设备的各个部件的操作;存储器可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种,可储存上述有关的数据信息,此外还可存储执行有关信息的程序,并且处理器可执行该存储器存储的该程序,以实现信息存储或处理等;输入单元用于向处理器提供输入,例如可以为按键或触摸输入装置;电源用于向电子设备提供电力;显示器用于进行图像和文字等显示对象的显示,例如可为lcd显示器。通信模块即为经由天线发送和接收信号的发送机/接收机。通信模块(发送机/接收机)耦合到处理器,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)还经由音频处理器耦合到扬声器和麦克风,以经由扬声器提供音频输出,并接收来自麦克风的音频输入,从而实现通常的电信功能。音频处理器可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器还耦合到中央处理器,从而使得可以通过麦克风能够在本机上录音,且使得可以通过扬声器来播放本机上存储的声音。
89.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
90.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的系统。
91.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令系统的制造品,该指令系统实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
92.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
93.以上所述仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换等都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献