CN115543188A - 一种性能测试方法、装置、设备及存储介质 - Google Patents

一种性能测试方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN115543188A
CN115543188A CN202211055721.3A CN202211055721A CN115543188A CN 115543188 A CN115543188 A CN 115543188A CN 202211055721 A CN202211055721 A CN 202211055721A CN 115543188 A CN115543188 A CN 115543188A
Authority
CN
China
Prior art keywords
block storage
storage cluster
service
distributed block
foreground
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
Application number
CN202211055721.3A
Other languages
English (en)
Inventor
郭丰雅
王梦沙
韩勇
吴瑞强
丁学海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Zhongke Shuguang Storage Technology Co ltd
Original Assignee
Tianjin Zhongke Shuguang Storage Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin Zhongke Shuguang Storage Technology Co ltd filed Critical Tianjin Zhongke Shuguang Storage Technology Co ltd
Priority to CN202211055721.3A priority Critical patent/CN115543188A/zh
Publication of CN115543188A publication Critical patent/CN115543188A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种性能测试方法、装置、设备及存储介质。该方法包括:获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量;依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数;在前台业务压力下,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数。本发明实施例的技术方案,可以在后台干扰业务和前台业务并行的情况下进行性能测试。

Description

一种性能测试方法、装置、设备及存储介质
技术领域
本发明涉及存储系统测试技术领域,尤其涉及一种性能测试方法、装置、设备及存储介质。
背景技术
随着数字经济的快速发展,各行各业都需要进行大量的数据存储、读取和使用,数据中心已经和交通、网络通信一样成为基础设施。分布式块存储以其高可靠性以及可扩展性等优点得到广泛应用。
分布式块存储能够实现跨设备数据分发,以及多个服务器共享负载。分布式块存储系统面向的业务通常是时延敏感型业务,例如,虚拟桌面(Virtual DesktopInfrastructure,简称VDI)业务、数据库业务以及云计算业务。这些业务往往对于每秒进行读写操作的次数(Input/Output Operations Per Second,简称IOPS)要求较高,因此,对于分布式块存储系统的性能测试十分重要。
发明内容
本发明提供了一种性能测试方法、装置、设备及存储介质,可以在后台干扰业务和前台业务并行的情况下进行性能测试。
根据本发明的一方面,提供了一种性能测试方法,包括:
获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量;
依据最大I/O负载量,为所述分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数;
在所述前台业务压力下,在所述分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数。
可选的,获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量,包括:
向分布式块存储集群施加与所述待测试业务模式关联的初始前台业务压力,并获取分布式块存储集群在所述初始前台业务压力下的测试性能参数;
依据所述测试性能参数,向所述分布式块存储集群增加前台业务压力,并持续获取增压后的测试性能参数;
在所述测试性能参数达到第一阈值的情况下,确定当前分布式块存储集群提供的I/O负载量为最大I/O负载量。通过持续增大向分布式块存储集群施加的压力,并持续获取测试性能参数,能够快速获取分布式块存储集群能够对前台业务提供的最大I/O负载量。
可选的,依据所述测试性能参数,向所述分布式块存储集群增加前台业务压力,包括:
在所述测试性能参数未达到第二阈值的情况下,按照第一增压幅度,向分布式块存储集群增加前台业务压力;
在所述测试性能参数达到第二阈值的情况下,按照第二增压幅度,向分布式块存储集群增加前台业务压力;所述第一增压幅度大于所述第二增压幅度。在测试性能参数未达到第二阈值时大幅增压,在测试性能参数达到第二阈值时小幅增压,可以在保证获取最大I/O负载量效率的同时,提高确定最大I/O负载量的准确度。
可选的,依据所述最大I/O负载量,为所述分布式块存储集群施加前台业务压力,包括:
依据所述最大I/O负载量和阶段增压参数,确定当前测试阶段对应的前台业务压力;
为所述分布式块存储集群施加与当前测试阶段匹配的前台业务压力。依据最大I/O负载量和阶段增压参数确定每一测试阶段的前台业务压力,可以在不同前台业务压力下,测试分布式块存储集群的性能。
可选的,在获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数之后,还包括:
停止向所述分布式块存储集群施加前台业务压力;
在所述分布式块存储集群运行后台干扰业务;
获取运行后台干扰业务情况下分布式块存储集群的第三性能参数。停止施加前台业务压力后,继续在分布式块存储集群运行后台干扰业务,可以在仅运行后台干扰业务下对分布式块存储集群进行性能测试。
可选的,在获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数之后,还包括:
在前台业务和后台干扰业务并行运行的情况下,获取所述后台干扰业务的业务参数。通过在前台业务和后台干扰业务并行运行的情况下,获取后台干扰业务的业务参数,可以确定在当前前台业务压力下是否能够正常执行后台干扰业务。
可选的,所述后台干扰业务包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移中的至少一项。可以依据实际测试需求,测试不同后台干扰业务对于前台业务的影响。
根据本发明的另一方面,提供了一种性能测试装置,包括:
最大负载量确定模块,用于获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量;
第一性能参数获取模块,用于依据最大I/O负载量,为所述分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数;
第二性能参数获取模块,用于在所述前台业务压力下,在所述分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数。
可选的,最大负载量确定模块,包括:
初始压力施加单元,用于向分布式块存储集群施加与所述待测试业务模式关联的初始前台业务压力,并获取分布式块存储集群在所述初始前台业务压力下的测试性能参数;
增压单元,用于依据所述测试性能参数,向所述分布式块存储集群增加前台业务压力,并持续获取增压后的测试性能参数;
最大负载量确定单元,用于在所述测试性能参数达到第一阈值的情况下,确定当前分布式块存储集群提供的I/O负载量为最大I/O负载量。
可选的,增压单元,具体用于:
在所述测试性能参数未达到第二阈值的情况下,按照第一增压幅度,向分布式块存储集群增加前台业务压力;
在所述测试性能参数达到第二阈值的情况下,按照第二增压幅度,向分布式块存储集群增加前台业务压力;所述第一增压幅度大于所述第二增压幅度。
可选的,第一性能参数获取模块,具体用于:
依据所述最大I/O负载量和阶段增压参数,确定当前测试阶段对应的前台业务压力;
为所述分布式块存储集群施加与当前测试阶段匹配的前台业务压力。
可选的,性能测试装置,还包括:
前台业务压力停止模块,用于停止向所述分布式块存储集群施加前台业务压力;
后台干扰业务运行模块,用于在所述分布式块存储集群运行后台干扰业务;
第三性能参数获取模块,用于获取运行后台干扰业务情况下分布式块存储集群的第三性能参数。
可选的,性能测试装置,还包括:
业务参数获取模块,用于在前台业务和后台干扰业务并行运行的情况下,获取所述后台干扰业务的业务参数。
可选的,所述后台干扰业务包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移中的至少一项。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的性能测试方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的性能测试方法。
本发明实施例的技术方案,首先获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量,进而依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数,进一步的,在前台业务压力下,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数,通过在前台业务压力下运行后台干扰业务,可以确定后台干扰业务对于前台业务的影响,为分布式块存储集群的资源分配提供参考依据。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是根据本发明实施例提供的一种性能测试方法的流程图;
图1b是根据本发明实施例提供的性能测试系统的结构示意图;
图2是根据本发明实施例提供的一种性能测试方法的流程图;
图3是根据本发明实施例提供的一种性能测试方法的流程图;
图4a是根据本发明实施例提供的一种性能测试方法的流程图;
图4b是根据本发明实施例提供的一种性能测试方法的测试流程图;
图4c是根据本发明实施例提供的一种测试结果示意图;
图5是根据本发明实施例提供的一种性能测试装置的结构示意图;
图6是实现本发明实施例的性能测试方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1a为本发明实施例提供了一种性能测试方法的流程图,本实施例可适用于在前台业务和后台干扰业务并发时进行性能测试的情况,该方法可以由性能测试装置来执行,该性能测试装置可以采用硬件和/或软件的形式实现,该性能测试装置可配置于各种通用计算设备中。如图1a所示,该方法包括:
S110、获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量。
性能测试系统的结构如图1b所示,包括多台压力机以及分布式块存储集群,多台压力机通过用户业务网络与分布式块存储集群通信连接,分布式块存储集群中的各节点通过分布式块存储内部网络与集群中其他节点通信连接。其中,压力机用于按照测试需求向分布式块存储集群施加前台业务压力。不同的用户业务模式,对应不同的压力模式,压力机可以针对待测试业务模式,向分布式块存储集群施加对应模式的前台业务压力。
需要说明的是,本发明实施例的技术方案可以由其中一台压力机执行,还可以由专用的测试设备执行。
本发明实施例中,在测试人员选择了待测试业务模式后,通过自适应算法,获取待测试业务模式下,分布式块存储集群的最大I/O负载量。具体的,向分布式块存储集群施加初始前台业务压力,并获取初始前台业务压力下,分布式块存储集群的测试性能参数。若测试性能参数未到达性能阈值,则继续加压,并持续获取加压后分布式块存储集群的测试性能参数,直至测试性能参数达到性能阈值,最终将达到性能阈值时分布式块存储集群提供的I/O负载量确定为最大I/O负载量。
其中,分布式块存储集群的性能参数可以包括硬件性能参数和软件性能参数。示例性的,硬件性能参数可以包括中央处理器(central processing unit,简称CPU)占用率、磁盘占用率以及网络带宽占用率等,软件性能参数可以包括队列深度。
测试性能参数可以是上述性能参数中的一种或者多种,在测试性能参数包括多种性能参数时,在至少一种性能参数达到性能阈值,则认为测试性能参数达到性能阈值。例如,测试性能参数包括CPU占用率和磁盘占用率,对应的性能阈值均为100%。则在对分布式块存储集群进行持续加压过程中,CPU占用率和磁盘占用率其中一项达到100%,则认为测试性能参数达到阈值。
在一个具体的例子中,首先控制压力机向分布式块存储集群施加初始前台业务压力,例如,初始前台业务压力的IOPS为10000。此时,可以获取分布式块存储集群的测试性能参数,并确定是否达到性能阈值。未达到性能阈值的情况下,进一步按照设定的增压幅度,持续增加压力,例如,每次增加IOPS为5000,直至测试性能参数达到性能阈值,例如100%,最终确定此时分布式块存储集群提供的I/O负载量为最大I/O负载量。
在另一个具体的例子中,首先控制压力机向分布式块存储集群施加初始前台业务压力,例如,初始前台业务压力的IOPS为10000。此时,可以获取分布式块存储集群的测试性能参数,并确定是否达到第二性能阈值,例如,第二性能阈值是90%。在未达到第二性能阈值的情况下,按照第一增压幅度,持续增加压力,例如,每次增加IOPS为5000;在达到第二性能阈值的情况下,为避免加压幅度过大,按照第二增压幅度,持续增加压力,例如,每次增加IOPS为2500,直至测试性能参数达到第一性能阈值(例如,100%),最终确定此时分布式块存储集群提供的I/O负载量为最大I/O负载量。
S120、依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数。
本发明实施例中,在获取到分布式块存储集群的最大I/O负载量后,运行前台业务线程和前台业务监控线程。其中,前台业务线程可以控制压力机,依据最大I/O负载量为分布式块存储集群施加前台业务压力。前台业务监控线程与前台业务线程并行,用于在分布式存储集群负载前台业务压力的情况下,获取分布式存储集群的硬件性能参数和软件性能参数。
具体的,为了测试不同前台业务压力下,后台干扰业务对于前台业务的影响,可以分为多个阶段进行性能测试,每个阶段施加的前台业务压力不同,但均不超过最大I/O负载量。示例性的,在第一测试阶段施加压力为最大I/O负载量的10%,在第二测试阶段施加压力为最大I/O负载量的20%,依次类推,直至施加压力等于最大I/O负载量。
其中,硬件性能参数可以包括中央处理器(Central Processing Unit,简称CPU)占用率、磁盘占用率以及网络带宽占用率等,软件性能参数可以包括队列深度。除此之外,压力机还会实时获取分布式块存储集群实际所提供的I/O负载量。
S130、在前台业务压力下,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数。
分布式块存储集群除了要处理前台业务,还要保证集群的稳定运行,这就需要在集群内部运行一些后台业务,这些后台业务执行时会对当前处理的前台业务产生一定的影响,因此,将这些后台业务称为后台干扰业务。前台业务和后台干扰业务均会占用分布式块存储集群的资源,因此,对前台业务和后台干扰业务并行情况下,对分布式块存储集群进行性能测试,对于前台业务和后台干扰业务的正常执行十分重要。
其中,后台干扰业务可以包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移等业务。
本发明实施例中,在前台业务压力下,按照设定干扰周期,定期启动和停止后台干扰业务,同时获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数。具体的,在向分布式块存储集群施加前台业务压力后,持续获取分布式块存储集群当前提供的I/O负载量。在I/O负载量稳定后,按照设定干扰周期,在分布式块存储集群运行后台干扰业务,同时获取前台业务和后台干扰业务并行情况下的第二性能参数,以确定后台干扰业务对于前台业务的影响。
示例性的,在分布式块存储集群在前台业务压力下提供的I/O负载量稳定的情况下,按照每隔10分钟启动一次,每次启动3分钟的周期启动和停止后台干扰业务。
本发明实施例的技术方案,首先获取待测试业务模式下,分布式块存储集群的最大I/O负载量,进而依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数,进一步的,在前台业务压力下,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数,通过在前台业务压力下运行后台干扰业务,可以测试不同业务模型、不同前台业务压力下分布式块存储集群的性能,为分布式块存储集群的资源分配提供参考依据。
图2为本发明实施例提供的一种性能测试方法的流程图,本实施例在上述实施例的基础上进一步细化,提供了获取待测试业务模式下,分布式块存储集群的最大I/O负载量的具体步骤,以及依据最大I/O负载量,为分布式块存储集群施加前台业务压力的具体步骤。如图2所示,该方法包括:
S210、向分布式块存储集群施加与待测试业务模式关联的初始前台业务压力,并获取分布式块存储集群在初始前台业务压力下的测试性能参数。
本发明实施例中,在用户选择待测试业务模式后,为了获取分布式块存储集群能够对外提供的最大I/O负载量,首先向分布式块存储集群施加与待测试业务模式关联的初始前台业务压力,同时获取分布式块存储集群在初始前台业务压力下的测试性能参数,以便及时确定分布式块存储集群的软件/硬件性能是否达到饱和。
S220、依据测试性能参数,向分布式块存储集群增加前台业务压力,并持续获取增压后的测试性能参数。
本发明实施例中,依据测试性能参数,向分布式块存储集群持续增加前台业务压力,并持续获取增压后的测试性能参数。具体的,在测试性能参数未达到预先设定的第一阈值时,继续向分布式存储集群增加前台业务压力,若达到第一阈值,则确定当前I/O负载量为最大I/O负载量。
在一个具体的例子中,若在初始前台业务压力下,测试性能参数为50%,第一阈值为100%,显然在初始前台业务压力下测试性能参数未达到第一阈值,则会持续增加前台业务压力,并持续监测增压后的测试性能参数,直至测试性能参数达到第一阈值。
可选的,依据测试性能参数,向分布式块存储集群增加前台业务压力,包括:
在测试性能参数未达到第二阈值的情况下,按照第一增压幅度,向分布式块存储集群增加前台业务压力;
在测试性能参数达到第二阈值的情况下,按照第二增压幅度,向分布式块存储集群增加前台业务压力;第一增压幅度大于第二增压幅度。
本可选的实施例中,提供一种依据测试性能参数,向分布式块存储集群增加前台业务压力的具体方式:在每次增压前台业务压力时,判断当前测试性能参数是否达到第二阈值,例如,第二阈值是90%;若否,则确定当前施加的压力与分布式块存储集群的最大I/O负载量相差较大,则按照第一增压幅度,向分布式块存储集群增压;若否,则确定当前施加压力与集群的最大I/O负载量相差较小,即接近最大I/O负载量,则按照第二增压幅度,向分布式块存储集群增压,避免增压幅度过大,导致施加的压力超过分布式块存储集群的最大I/O负载量,在保证最大I/O负载量的计算效率的同时,提高计算数据的准确性。
在一个具体的例子中,第二阈值是90%,第一增压幅度为每次增加的IOPS是5000,第二增压幅度为每次增加的IOPS是2500。在测试性能参数未到达90%时,每次线性大幅增压,增压幅度为5000;在测试性能参数达到90%时,为避免增压幅度过大,影响数据准确性,改为线性小幅增压,增压幅度为2500。
S230、在测试性能参数达到第一阈值的情况下,确定当前分布式块存储集群提供的I/O负载量为最大I/O负载量。
本发明实施例中,在对分布式块存储集群持续加压过程中,若在某一时刻测试性能参数达到第一阈值,则可以持续测试一段时间,若测试性能参数保持稳定,则确定当前分布式块存储集群提供的I/O负载量即为最大I/O负载量。
S240、依据最大I/O负载量和阶段增压参数,确定当前测试阶段对应的前台业务压力。
本发明实施例中,为了测试在不同前台业务压力下,运行后台干扰业务对于前台业务的影响,可以将测试分为多个阶段,每个阶段为分布式块存储集群施加不同前台业务压力。具体的,可以依据最大I/O负载量和阶段增压参数,确定当前测试阶段对应的前台业务压力,其中,不同阶段对应的阶段增压参数不同。
在一个具体的例子中,在第一测试阶段,阶段增压参数为10%,则可以确定第一阶段需要施加的前台业务压力是最大I/O负载量的10%。在第二测试阶段,阶段增压参数为20%,则可以确定第二阶段需要施加的前台业务压力是最大I/O负载量的20%。依次类推,直至施加的前台业务压力等于最大I/O负载量。
S250、为分布式块存储集群施加与当前测试阶段匹配的前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数。
本发明实施例中,在确定当前阶段的前台业务压力后,为分布式块存储集群施加与当前测试阶段匹配的前台业务压力。与此同时,还获取前台业务压力下分布式块存储集群的第一性能参数。其中,第一性能参数是在没有后台干扰业务时,分布式块存储集群的软件或硬件性能参数。
S260、在前台业务压力下,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数。
本发明实施例的技术方案,通过向分布式块存储集群施加与待测试业务模式关联的初始前台业务压力,进而依据初始前台业务压力下的测试性能参数,确定增压幅度,持续向分布式块存储集群增加压力,最终在测试性能参数达到第一阈值的情况下,确定当前分布式块存储集群提供的I/O负载量为最大I/O负载量,可以提高确定最大I/O负载量的效率和准确性。
图3为本发明实施例提供的一种性能测试方法的流程图,本实施例在上述实施例的基础上进一步细化,提供了获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数之后的具体步骤。如图3所示,该方法包括:
S310、获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量。
S320、依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数。
S330、在前台业务压力下,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数。
可选的,后台干扰业务包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移中的至少一项。
本可选的实施例中,后台干扰业务是用于保证分布式块存储集群稳定运行的业务,后台干扰业务可以包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移中的至少一项。
可选的,在获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数之后,还包括:
在前台业务和后台干扰业务并行运行的情况下,获取后台干扰业务的业务参数。
本可选的实施例中,在周期性的运行后台干扰业务的同时,还会启动一个并行线程,在前台业务和后台干扰业务并行运行的情况下,获取后台干扰业务的业务参数,以确定分布式块存储集群为后台干扰业务提供的I/O负载量是否能够支持后台干扰业务正常运行。其中,业务参数用户表征后台干扰业务的运行状态。示例性的,在运行的后台干扰业务是磁盘碎片整理的情况下,业务参数可以是磁盘碎片整理速度;在运行的后台干扰业务是磁盘巡检的情况下,业务参数可以是磁盘巡检速度。
S340、停止向分布式块存储集群施加前台业务压力。
本发明实施例中,针对不同前台业务压力完成性能测试后,停止向分布式块存储集群注入前台业务压力,以便于测试仅运行后台干扰业务时分布式块存储集群的性能。
S350、在分布式块存储集群运行后台干扰业务。
S360、获取运行后台干扰业务情况下分布式块存储集群的第三性能参数。
本发明实施例中,在停止行分布式块存储集群施加前台业务压力后,按照设定干扰周期,在分布式块存储集群运行后台干扰业务。同时获取仅运行后台干扰业务情况下分布式块存储集群的第三性能参数,可以确定后台干扰业务单独运行情况下分布式块存储集群的性能。
本发明实施例的技术方案,分别获取分布式块存储集群在前台业务压力下的第一性能参数,在前台业务和后台干扰业务并行情况下的第二性能参数,以及在运行后台干扰业务情况下的第三性能参数,上述测试结果可以为保障分布式块存储集群后续的服务质量提供参考依据。
图4a为本发明实施例提供的一种性能测试方法的流程图。如图4a所示,该方法包括:
S410、获取待测试业务模式下,分布式块存储集群的最大I/O负载量。
S420、启动多线程任务,为分布式块存储集群施加前台业务压力,并获取分布式块存储集群的第一性能参数。
具体的测试流程如图4b所示,首先运行线程1和线程2。
线程1:控制压力机向分布式块存储集群施加最大I/O负载量的10%的前台业务压力;
线程2:按照设定采样周期,收集分布式块存储集群在前台业务压力下的软件和硬件性能参数。与此同时,还可以监控可能出现的异常问题,例如,磁盘故障等,避免进行无效测试。
S430、在分布式块存储集群提供的前台业务I/O稳定后,在前台业务压力下,定时启动后台干扰业务和后台业务监控线程。此时,下述4个线程并行运行。
线程1:控制压力机向分布式块存储集群施加最大I/O负载量的10%的前台业务压力;
线程2:按照设定采样周期,收集分布式块存储集群在前台业务压力下的软件和硬件性能参数;
线程3:启动后台干扰业务。例如,磁盘巡检业务、碎片整理业务等;
线程4:获取后台干扰业务的运行参数。例如,磁盘巡检速度、碎片整理速度等。
按照设定干扰周期多次启停上述线程3和线程4,可以得到多组对比数据,确定后台干扰业务对于前台业务的影响,减少测试误差。
S440、向分布式块存储集群继续增加前台业务压力,并重复执行S420-S430,依次类推,直至向分布式块存储集群施加的前台业务压力等于最大I/O负载量。
S450、停止注入前台业务压力,启动后台干扰业务和后台业务监控线程。
S460、选择下一个待测试业务模式,重复执行S410-S450。
本发明实施例中,还可以依据测试结果,通过生成图标的方式将测试结果进行直观展示,并出具测试报告,使得测试人员可以直观得到在不同前台业务压力下,分布式块存储集群的性能,以及后台干扰业务对于前台业务的影响。示例性的,如图4c所示,可以通过图表展示不同前台业务压力下,后台干扰业务对于前台I/O负载量的干扰。
本发明实施例的技术方案,首先获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量,进而依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数,进一步的,在前台业务压力下,按照设定干扰周期,在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数,通过在前台业务压力下周期性运行后台干扰业务,可以确定后台干扰业务对于前台业务的影响,为分布式块存储集群的资源分配提供参考依据。
图5为本发明实施例提供的一种性能测试装置的结构示意图。如图5所示,该装置包括:
最大负载量确定模块510,用于获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量;
第一性能参数获取模块520,用于依据最大I/O负载量,为所述分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数;
第二性能参数获取模块530,用于在所述前台业务压力下,在所述分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数。
本发明实施例的技术方案,首先获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量,进而依据最大I/O负载量,为分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数,进一步的,在前台业务压力下,按照在分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下分布式块存储集群的第二性能参数,通过在前台业务压力下运行后台干扰业务,可以确定后台干扰业务对于前台业务的影响,为分布式块存储集群的资源分配提供参考依据。
可选的,最大负载量确定模块510,包括:
初始压力施加单元,用于向分布式块存储集群施加与所述待测试业务模式关联的初始前台业务压力,并获取分布式块存储集群在所述初始前台业务压力下的测试性能参数;
增压单元,用于依据所述测试性能参数,向所述分布式块存储集群增加前台业务压力,并持续获取增压后的测试性能参数;
最大负载量确定单元,用于在所述测试性能参数达到第一阈值的情况下,确定当前分布式块存储集群提供的I/O负载量为最大I/O负载量。
可选的,增压单元,具体用于:
在所述测试性能参数未达到第二阈值的情况下,按照第一增压幅度,向分布式块存储集群增加前台业务压力;
在所述测试性能参数达到第二阈值的情况下,按照第二增压幅度,向分布式块存储集群增加前台业务压力;所述第一增压幅度大于所述第二增压幅度。
可选的,第一性能参数获取模块520,具体用于:
依据所述最大I/O负载量和阶段增压参数,确定当前测试阶段对应的前台业务压力;
为所述分布式块存储集群施加与当前测试阶段匹配的前台业务压力。
可选的,性能测试装置,还包括:
前台业务压力停止模块,用于停止向所述分布式块存储集群施加前台业务压力;
后台干扰业务运行模块,用于在所述分布式块存储集群运行后台干扰业务;
第三性能参数获取模块,用于获取运行后台干扰业务情况下分布式块存储集群的第三性能参数。
可选的,性能测试装置,还包括:
业务参数获取模块,用于在前台业务和后台干扰业务并行运行的情况下,获取所述后台干扰业务的业务参数。
可选的,所述后台干扰业务包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移中的至少一项。
本发明实施例所提供的性能测试装置可执行本发明任意实施例所提供的性能测试方法,具备执行方法相应的功能模块和有益效果。
图6示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图6所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如性能测试方法。
在一些实施例中,性能测试方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的性能测试方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行性能测试方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种性能测试方法,其特征在于,包括:
获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量;
依据最大I/O负载量,为所述分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数;
在所述前台业务压力下,在所述分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数。
2.根据权利要求1所述的方法,其特征在于,获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量,包括:
向分布式块存储集群施加与所述待测试业务模式关联的初始前台业务压力,并获取分布式块存储集群在所述初始前台业务压力下的测试性能参数;
依据所述测试性能参数,向所述分布式块存储集群增加前台业务压力,并持续获取增压后的测试性能参数;
在所述测试性能参数达到第一阈值的情况下,确定当前分布式块存储集群提供的I/O负载量为最大I/O负载量。
3.根据权利要求2所述的方法,其特征在于,依据所述测试性能参数,向所述分布式块存储集群增加前台业务压力,包括:
在所述测试性能参数未达到第二阈值的情况下,按照第一增压幅度,向分布式块存储集群增加前台业务压力;
在所述测试性能参数达到第二阈值的情况下,按照第二增压幅度,向分布式块存储集群增加前台业务压力;所述第一增压幅度大于所述第二增压幅度。
4.根据权利要求1所述的方法,其特征在于,依据所述最大I/O负载量,为所述分布式块存储集群施加前台业务压力,包括:
依据所述最大I/O负载量和阶段增压参数,确定当前测试阶段对应的前台业务压力;
为所述分布式块存储集群施加与当前测试阶段匹配的前台业务压力。
5.根据权利要求1所述的方法,其特征在于,在获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数之后,还包括:
停止向所述分布式块存储集群施加前台业务压力;
在所述分布式块存储集群运行后台干扰业务;
获取运行后台干扰业务情况下分布式块存储集群的第三性能参数。
6.根据权利要求1所述的方法,其特征在于,在获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数之后,还包括:
在前台业务和后台干扰业务并行运行的情况下,获取所述后台干扰业务的业务参数。
7.根据权利要求1-6任一所述的方法,其特征在于,所述后台干扰业务包括磁盘巡检、磁盘碎片整理、磁盘扩容、数据均衡以及数据迁移中的至少一项。
8.一种性能测试装置,其特征在于,包括:
最大负载量确定模块,用于获取待测试业务模式下,分布式块存储集群的最大输入输出I/O负载量;
第一性能参数获取模块,用于依据最大I/O负载量,为所述分布式块存储集群施加前台业务压力,并获取前台业务压力下分布式块存储集群的第一性能参数;
第二性能参数获取模块,用于在所述前台业务压力下,在所述分布式块存储集群运行后台干扰业务,并获取前台业务和后台干扰业务并行情况下所述分布式块存储集群的第二性能参数。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的性能测试方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的性能测试方法。
CN202211055721.3A 2022-08-30 2022-08-30 一种性能测试方法、装置、设备及存储介质 Pending CN115543188A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211055721.3A CN115543188A (zh) 2022-08-30 2022-08-30 一种性能测试方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211055721.3A CN115543188A (zh) 2022-08-30 2022-08-30 一种性能测试方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN115543188A true CN115543188A (zh) 2022-12-30

Family

ID=84725719

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211055721.3A Pending CN115543188A (zh) 2022-08-30 2022-08-30 一种性能测试方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN115543188A (zh)

Similar Documents

Publication Publication Date Title
CN113590403B (zh) 压力测试方法、装置、系统、电子设备、存储介质及产品
CN115378859B (zh) 用于确定极限状态信息的方法、装置、设备、介质和产品
CN115150471B (zh) 数据处理方法、装置、设备、存储介质及程序产品
CN112685298A (zh) 应用程序的代码覆盖测试方法、装置以及电子设备
CN109144846B (zh) 用于测试服务器的测试方法和装置
CN112860401B (zh) 任务调度方法、装置、电子设备和存储介质
CN115543188A (zh) 一种性能测试方法、装置、设备及存储介质
CN116126719A (zh) 接口测试方法、装置、电子设备及存储介质
CN115438007A (zh) 一种文件合并方法、装置、电子设备及介质
CN115509931A (zh) 基于系统的性能测试方法、装置、电子设备及存储介质
CN113377295B (zh) 多生产者单消费者的数据存储和读取方法、装置、设备
CN115576827A (zh) 业务流程软件的性能测试方法、装置、设备及存储介质
CN115017047A (zh) 基于b/s架构的测试方法、系统、设备及介质
CN116450120B (zh) 实时操作系统内核分析方法、装置、设备及介质
CN115424658B (zh) 存储单元的测试方法、装置、电子设备、存储介质
CN114610575B (zh) 应用于计算分支的更新峰值的方法、装置、设备和介质
CN116501499B (zh) 数据跑批方法、装置、电子设备及存储介质
CN116048791B (zh) 一种测试节点的调控方法、装置、电子设备以及存储介质
CN114598705B (zh) 消息负载均衡方法、装置、设备和介质
CN116069474A (zh) 一种任务调度方法、装置、设备及介质
CN114428712A (zh) 耗时统计方法及装置
CN116756061A (zh) 一种外部设备适配方法、装置、设备及存储介质
CN116303098A (zh) 应用测试方法、装置、电子设备及存储介质
CN118051173A (zh) 存储进程的管理方法、装置、设备和介质
CN117453358A (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