CN107547261B - 云平台性能测试方法及装置 - Google Patents

云平台性能测试方法及装置 Download PDF

Info

Publication number
CN107547261B
CN107547261B CN201710607864.3A CN201710607864A CN107547261B CN 107547261 B CN107547261 B CN 107547261B CN 201710607864 A CN201710607864 A CN 201710607864A CN 107547261 B CN107547261 B CN 107547261B
Authority
CN
China
Prior art keywords
pressure
types
application
cloud platform
tool
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.)
Active
Application number
CN201710607864.3A
Other languages
English (en)
Other versions
CN107547261A (zh
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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710607864.3A priority Critical patent/CN107547261B/zh
Publication of CN107547261A publication Critical patent/CN107547261A/zh
Priority to PCT/CN2018/096688 priority patent/WO2019019975A1/zh
Application granted granted Critical
Publication of CN107547261B publication Critical patent/CN107547261B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3428Benchmarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • H04L43/55Testing of service level quality, e.g. simulating service usage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种云平台性能测试方法及装置。该方法包括:在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别。根据所选的压力注入路径进行压力注入,通过云平台监控系统监控云平台的运行获取测试运行结果。从而得到的测试结果更加全面,提高了测试的准确性。

Description

云平台性能测试方法及装置
技术领域
本申请涉及性能测试技术领域,尤其涉及一种云平台性能测试方法及装置。
背景技术
云平台为大型、分布式管理系统,其本质是一种服务提供模型,通过这种模型可以随时随地、按需地通过网络访问共享资源池的资源,共享资源池的资源包括计算资源、网络资源和存储资源等,这些资源能够被动态地分配和调整,在不同用户之间灵活划分。云平台通过服务的形式为上层各种应用提供计算、存储、网络的支持。云平台上承载的服务和应用遍布各行各业,使用场景丰富、应用规模大、应用模型复杂。云平台一般都需具有通用性和大规模的特点,以便支持各种复杂使用场景,系统功能模块多依赖多,结构复杂。因此,云平台的性能能力是衡量云平台质量的一个重要指标,直接影响云上应用的性能表现,对云平台的可用性和可靠性发挥着重要的作用。性能测试是云平台的重要测试内容,随着云上应用的规模越来越大场景越来越复杂,不同的应用类型、不同的请求压力、不同的数据量,对云平台带来的冲击完全不一样。
相关技术中,采用基准负载测试方法进行云平台的性能测试,其测试过程为:首先选择基准测试对象和压测性能指标项,接着选择基准压力测试工具并在所选的基准测试对象上部署,根据压力模型配置所选择的基准压力测试工具,最后开始测试,在压力模型不断产生压力的同时,获取基准压力测试工具的测试结果,通过对测试结果的分析对比,判定所选的基准测试对象的压测性能指标的性能能力,例如:对云平台的不同类型数据盘读写能力根据不同的读写模型进行每秒读写次数以及时延的压力测试。
可以看出,上述测试方法是基于单点的压力注入模型下的性能测试,得到的性能测试数据和评估结论也过于单一化,而云平台中,多种多样的云上混合在线应用和大规模的请求访问数据压力对云平台产生的压力点和基准压力工具产生的单点压力点是不同的,进而形成的性能瓶颈点、系统故障率也是不尽相同的,因此,通过上述测试方法得到的测试结果不够全面,准确性不高。
发明内容
本申请提供一种云平台性能测试方法及装置,可模拟真实应用场景测试云平台的性能,测试结果更加全面,提高测试的准确性。
第一方面,本申请提供一种云平台性能测试方法,包括:
在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,其中,压力类型为云平台中引发性能问题的压力种类,施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,施压规格范围为施压对象的数量的范围,施压工具为进行压力注入的工具集合或程序集合。根据所选的压力注入路径进行压力注入,在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
通过预先设置测试运行周期和压力注入时间间隔,在测试运行周期内,对正在运行中的云平台在每一压力注入时间间隔点选择一条压力注入路径,并根据所选的压力注入路径进行压力注入。其中的压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。由于每一次的压力注入路径的选择,是根据不同压力类型、压力类型对应的施压对象及施压对象个数、压力类型对应的施压工具及施压工具的压力级别进行随机的选择的,因此可最大程度上模拟云平台的真实应用场景下混合、叠加业务,挖掘真实应用场景中业务长时间运行后数据累积可能产生的性能问题,相比较相关技术中的基于单点的压力注入模型下的性能测试,本申请的测试结果更加全面,提高了测试的准确性。
在一种可能的设计中,根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,包括:从压力类型集合中选择N个压力类型;确定N个压力类型分别对应的施压对象,根据施压规格范围随机选择N个压力类型分别对应的施压对象个数;确定N个压力类型分别对应的施压工具,根据施压工具的压力级别范围随机选择N个压力类型分别对应的施压工具的压力级别。
在一种可能的设计中,根据所选的压力注入路径进行压力注入,包括:根据N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具和N个压力类型分别对应的施压工具的压力级别进行压力注入。
在一种可能的设计中,压力类型包括业务层负载、管理层系统资源和用户操作;
述业务层负载对应的施压对象为虚拟机,管理层系统资源对应的施压对象为管理节点,用户操作对应的施压对象为模拟用户前台界面操作和开放应用程序接口调用。
在一种可能的设计中,业务层负载包括计算密集型业务、内存密集型业务、存储密集型业务和网络密集型业务,计算密集型业务对应的施压工具为中央处理器CPU基准工具集合,内存密集型业务对应的施压工具为内存基准工具集合,存储密集型业务对应的施压工具为网络基准工具集合,网络密集型业务对应的施压工具为存储基准工具集合。管理层系统资源包括:管理层CPU资源、管理层内存资源、管理层存储资源和管理层网络资源;管理层CPU资源对应的施压工具为CPU消耗程序集合,管理层内存资源对应的施压工具为内存消耗程序集合,管理层存储资源对应的施压工具为存储输入输出IO消耗程序集合,管理层网络资源对应的施压工具为网络IO消耗、网络中断注入程序集合。用户操作包括所述云平台提供的计算类、存储类和网络类面向用户的云服务可供用户执行的操作;用户操作对应的施压工具为模拟用户操作的程序集合。
第二方面,本申请提供一种云平台性能测试装置,包括:
压力注入模块,用于在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,其中,压力类型为云平台中引发性能问题的压力种类,施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,施压规格范围为施压对象的数量的范围,施压工具为进行压力注入的工具集合或程序集合。根据所选的压力注入路径进行压力注入。
获取模块,用于在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
通过预先设置测试运行周期和压力注入时间间隔,在测试运行周期内,对正在运行中的云平台在每一压力注入时间间隔点选择一条压力注入路径,并根据所选的压力注入路径进行压力注入。其中的压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。由于每一次的压力注入路径的选择,是根据不同压力类型、压力类型对应的施压对象及施压对象个数、压力类型对应的施压工具及施压工具的压力级别进行随机的选择的,因此可最大程度上模拟云平台的真实应用场景下混合、叠加业务,挖掘真实应用场景中业务长时间运行后数据累积可能产生的性能问题,相比较相关技术中的基于单点的压力注入模型下的性能测试,本申请的测试结果更加全面,提高了测试的准确性。
在一种可能的设计中,压力注入模块具体用于:从压力类型集合中选择N个压力类型;确定N个压力类型分别对应的施压对象,根据施压规格范围随机选择N个压力类型分别对应的施压对象个数;确定N个压力类型分别对应的施压工具,根据施压工具的压力级别范围随机选择N个压力类型分别对应的施压工具的压力级别。
在一种可能的设计中,压力注入模块具体用于:根据N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具和N个压力类型分别对应的施压工具的压力级别进行压力注入。
在一种可能的设计中,压力类型包括业务层负载、管理层系统资源和用户操作;
述业务层负载对应的施压对象为虚拟机,管理层系统资源对应的施压对象为管理节点,用户操作对应的施压对象为模拟用户前台界面操作和开放应用程序接口调用。
在一种可能的设计中,业务层负载包括计算密集型业务、内存密集型业务、存储密集型业务和网络密集型业务,计算密集型业务对应的施压工具为中央处理器CPU基准工具集合,内存密集型业务对应的施压工具为内存基准工具集合,存储密集型业务对应的施压工具为网络基准工具集合,网络密集型业务对应的施压工具为存储基准工具集合。管理层系统资源包括:管理层CPU资源、管理层内存资源、管理层存储资源和管理层网络资源;管理层CPU资源对应的施压工具为CPU消耗程序集合,管理层内存资源对应的施压工具为内存消耗程序集合,管理层存储资源对应的施压工具为存储输入输出IO消耗程序集合,管理层网络资源对应的施压工具为网络IO消耗、网络中断注入程序集合。用户操作包括所述云平台提供的计算类、存储类和网络类面向用户的云服务可供用户执行的操作;用户操作对应的施压工具为模拟用户操作的程序集合。
第三方面,本申请提供一种云平台性能测试装置,包括:存储器和处理器;
存储器用于存储程序指令;
处理器用于调用存储器中的程序指令执行下述方法:
在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点选择一条压力注入路径,并根据所选的压力注入路径进行压力注入:
其中,选择一条压力注入路径具体包括:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,其中,压力类型为云平台中引发性能问题的压力种类,施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,施压规格范围为施压对象的数量的范围,施压工具为进行压力注入的工具集合或程序集合;
在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
第四方面,本申请提供一种可读存储介质,可读存储介质中存储有执行指令,当云平台性能测试装置的至少一个处理器执行该执行指令时,云平台性能测试装置执行第一方面及第一方面任一种可能的设计中的方法。
第五方面,本申请提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。云平台性能测试装置的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得云平台性能测试装置实施第一方面及第一方面任一种可能的设计中的方法。
附图说明
图1为本申请提供的一种云平台性能测试方法实施例的流程图;
图2为本申请提供的一种云平台性能测试方法实施例的流程图;
图3为本申请提供的一种云平台性能测试装置实施例的结构示意图;
图4为本申请提供的一种云平台性能测试装置实施例的结构示意图。
具体实施方式
为了使得云平台性能测试的测试结果更加全面、准确,本申请模拟真实应用场景测试云平台的性能,具体通过预先设置测试运行周期和压力注入时间间隔,在设置的运行周期内,对正在运行中的云平台在每一个压力注入时间间隔点选择一条压力注入路径,并根据所选的压力注入路径进行压力注入,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,将云平台中引发性能问题的压力进行分类,压力注入路径的选择是随机的,因此可最大程度上模拟云平台的真实应用场景下混合、叠加业务,挖掘真实应用场景中业务长时间运行后数据累积可能产生的性能问题,相比较相关技术中的基于单点的压力注入模型下的性能测试,本申请的测试结果更加全面、准确。下面结合附图详细说明本申请提供的云平台性能测试方法及装置。
图1为本申请提供的一种云平台性能测试方法实施例的流程图,如图1所示,本实施例的方法可以包括:
S101、在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,根据所选的压力注入路径进行压力注入。
具体地,例如测试运行周期为7-10天等等,例如,5分钟进行一次压力注入,压力注入时间间隔点则为5分钟、10分钟、15分钟等。每一次压力注入均要选择一条压力注入路径,再根据所选的压力注入路径进行压力注入。
其中,压力类型为云平台中引发性能问题的压力种类,例如,将云平台中可能引发性能问题的压力分为两个维度,一是系统中可能存在的性能瓶颈点例如系统资源的消耗,也即管理层系统资源;二是用户实际应用场景中的操作例如业务应用的执行(业务层负载)、云平台的用户操作,压力类型随机选择。施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,例如虚拟机、管理节点、模拟用户前台界面(protal)操作和开放应用程序接口(open Application Programming Interface,API)调用。施压规格范围为施压对象的数量的范围,或者是施压对象的数量的最大值。施压对象为虚拟机时,相应的施压规格范围为系统可以支持的虚拟机的数量的范围,施压对象为管理节点时,相应的施压规格范围系统部署的管理节点范围;施压对象为模拟用户protal操作和open API调用时,相应的施压规格范围为云平台支持的某一用户操作的最大并发数,为随机正整数。施压工具为进行压力注入的工具集合或程序集合。施压工具的压力级别范围可以为压力级别的最大值,施压工具的压力级别随机选择确定。
如下表一为一种压力类型、施压对象、施压规格范围、施压工具和施压工具的压力级别的对应关系表,如表一所示:
表一
Figure BDA0001358793900000051
压力类型可以分为三大类,分别是业务层负载、管理层系统资源和用户操作,业务层负载对应的施压对象为虚拟机,管理层系统资源对应的施压对象为管理节点,用户操作对应的施压对象为模拟用户protal操作和open API调用。
其中,业务层负载包括计算密集型业务、内存密集型业务、存储密集型业务和网络密集型业务。计算密集型业务对应的施压工具为中央处理器(CPU)基准(benchmark)工具集合,内存密集型业务对应的施压工具为内存基准(benchmark)工具集合,存储密集型业务对应的施压工具为网络基准(benchmark)工具集合,网络密集型业务对应的施压工具为存储基准(benchmark)工具集合。
管理层系统资源包括:管理层CPU资源、管理层内存资源、管理层存储资源和管理层网络资源。管理层CPU资源对应的施压工具为CPU消耗程序集合,管理层内存资源对应的施压工具为内存消耗程序集合,管理层存储资源对应的施压工具为存储输入输出IO消耗程序集合,管理层网络资源对应的施压工具为网络IO消耗、网络中断注入程序集合。
用户操作包括云平台提供的计算类、存储类和网络类等面向用户的云服务可供用户执行的操作。例如计算服务、网络服务和存储服务。用户操作对应的施压工具为模拟用户操作的程序集合,例如创建、删除、停止和启动操作集合。
上述的施压工具的压力级别均为根据对应的施压工具的压力级别范围随机确定。
具体来说,根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,可以为:
S101a、从压力类型集合中选择N个压力类型。
S101b、确定N个压力类型分别对应的施压对象,根据施压规格范围随机选择N个压力类型分别对应的施压对象个数。
S101c、确定N个压力类型分别对应的施压工具,根据施压工具的压力级别范围随机选择N个压力类型分别对应的施压工具的压力级别。
根据所选的压力注入路径进行压力注入,可以为:
根据N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具和N个压力类型分别对应的施压工具的压力级别进行压力注入。
例如,N为3,所选的压力类型包括2个计算密集型业务和1个计算服务,2个计算密集型业务对应的施压对象分别为5个,1个计算服务对应的施压对象为5个,2个计算密集型业务对应的施压工具为CPU基准工具集合,压力级别分别为M1和M2,1个计算服务对应的施压工具为创建、删除、停止和启动操作集合,压力级别为M3,计算密集型业务和计算服务对应的施压对象分别为虚拟机和模拟用户protal操作、open API调用,进行压力注入时对5个虚拟机采用CPU基准工具集合进行压力级别为M1的压力注入,对5个虚拟机采用CPU基准工具集合进行压力级别为M2的压力注入,对5个模拟用户protal操作、open API调用采用创建、删除、停止和启动操作集合进行压力级别为M3的压力注入。
S102、在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
例如,测试运行周期为7-10天,云平台正常运行7-10天,整个运行过程中进行正常的功能操作,在上述随机压力注入背景下,通过云平台监控系统观察云平台系统的响应时间、资源占用等性能监指标项是否超过阈值,观察系统各个功能模块是否产生错误日志、挂起、无响应异常等,进行分析,从而获取测试运行结果。
本实施例提供的云平台性能测试方法,通过预先设置测试运行周期和压力注入时间间隔,在测试运行周期内,对正在运行中的云平台在每一压力注入时间间隔点选择一条压力注入路径,并根据所选的压力注入路径进行压力注入。其中的压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。由于每一次的压力注入路径的选择,是根据不同压力类型、压力类型对应的施压对象及施压对象个数、压力类型对应的施压工具及施压工具的压力级别进行随机的选择的,因此可最大程度上模拟云平台的真实应用场景下混合、叠加业务,挖掘真实应用场景中业务长时间运行后数据累积可能产生的性能问题,相比较相关技术中的基于单点的压力注入模型下的性能测试,本申请的测试结果更加全面,提高了测试的准确性。
下面采用一个具体的实施例,对图1所示方法实施例的技术方案进行详细说明。
图2为本申请提供的一种云平台性能测试方法实施例的流程图,如图2所示,本实施例的方法可以包括:
S201、性能测试开始。
S202、在预设的测试运行周期内,进行随机压力注入。
具体地,进行随机压力注入包括:
S202a、从压力类型集合中选择压力类型1。
S202b、确定所选择的压力类型1对应的施压对象X,根据施压规格范围[0,m]随机选择压力类型1对应的施压对象个数n,施压对象的最大个数为m,n≤m。
S202c、从施压工具集合R中确定压力类型1对应的施压工具R1,并根据施压工具R1的压力级别范围[0,L]选择压力级别L1。
S202d、对n个施压对象X1到Xn,使用施压工具R1进行压力级别L1的压力注入。
测试运行周期若结束,则停止加压,否则继续在每一预设压力注入时间间隔点进行随机压力注入。
S203、全程性能指标观测,即在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
本实施例中是以所选的压力类型为1个为例进行说明,当压力类型为多个时,压力注入路径的选择和压力注入是类似的,此处不再一一举例。
本申请可以根据上述方法示例对云平台性能测试装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请各实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图3为本申请提供的一种云平台性能测试装置实施例的结构示意图,如图3所示,该装置包括:存储器11、处理器12、接口电路13以及总线14,其中,
存储器11、处理器12和接口电路13通过总线14连接并完成相互间的通信。处理器12通过接口电路13接收或发送信息,例如控制信息、数据等。
其中,存储器11中存储一组程序代码,处理器12调用存储器11中存储的程序代码,执行以下操作:
在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1。
其中,压力类型为云平台中引发性能问题的压力种类,例如,将云平台中可能引发性能问题的压力分为两个维度,一是系统中可能存在的性能瓶颈点例如系统资源的消耗,也即管理层系统资源;二是用户实际应用场景中的操作例如业务应用的执行(业务层负载)、云平台的用户操作,压力类型随机选择。施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,例如虚拟机、管理节点、模拟用户前台界面(protal)操作和开放应用程序接口(open API)调用。施压规格范围为施压对象的数量的范围,或者是施压对象的数量的最大值。施压对象为虚拟机或管理节点时,相应的施压规格范围为虚拟机或管理节点的数量的范围;施压对象为模拟用户protal操作和open API调用时,相应的施压规格范围为云平台支持的某一用户操作的最大并发数。施压工具为进行压力注入的工具集合或程序集合。施压工具的压力级别范围可以为压力级别的最大值,施压工具的压力级别随机选择确定。
根据所选的压力注入路径进行压力注入。
在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
图4为本申请提供的一种云平台性能测试装置实施例的结构示意图,如图4所示,本实施例的装置可以包括:压力注入模块21和获取模块22,其中,
压力注入模块21用于在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,其中,压力类型为云平台中引发性能问题的压力种类,施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,施压规格范围为施压对象的数量的范围,施压工具为进行压力注入的工具集合或程序集合。根据所选的压力注入路径进行压力注入。
获取模块22用于在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。
进一步地,压力注入模块21具体用于:从压力类型集合中选择N个压力类型,确定N个压力类型分别对应的施压对象,根据施压规格范围随机选择N个压力类型分别对应的施压对象个数,确定N个压力类型分别对应的施压工具,根据施压工具的压力级别范围随机选择N个压力类型分别对应的施压工具的压力级别。
进一步地,压力注入模块21具体用于:根据N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具和N个压力类型分别对应的施压工具的压力级别进行压力注入。
可选的,压力类型包括业务层负载、管理层系统资源和用户操作,述业务层负载对应的施压对象为虚拟机,管理层系统资源对应的施压对象为管理节点,用户操作对应的施压对象为模拟用户前台界面操作和开放应用程序接口调用。
可选的,业务层负载包括计算密集型业务、内存密集型业务、存储密集型业务和网络密集型业务。计算密集型业务对应的施压工具为中央处理器(CPU)基准(benchmark)工具集合,内存密集型业务对应的施压工具为内存基准(benchmark)工具集合,存储密集型业务对应的施压工具为网络基准(benchmark)工具集合,网络密集型业务对应的施压工具为存储基准(benchmark)工具集合。
管理层系统资源包括:管理层CPU资源、管理层内存资源、管理层存储资源和管理层网络资源。管理层CPU资源对应的施压工具为CPU消耗程序集合,管理层内存资源对应的施压工具为内存消耗程序集合,管理层存储资源对应的施压工具为存储输入输出IO消耗程序集合,管理层网络资源对应的施压工具为网络IO消耗、网络中断注入程序集合。
用户操作包括所述云平台提供的计算类、存储类和网络类面向用户的云服务可供用户执行的操作。用户操作对应的施压工具为模拟用户操作的程序集合。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理类似,此处不再赘述。
本实施例提供的云平台性能测试装置,通过预先设置测试运行周期和压力注入时间间隔,在测试运行周期内,对正在运行中的云平台在每一压力注入时间间隔点选择一条压力注入路径,并根据所选的压力注入路径进行压力注入。其中的压力注入路径包括被选的N个压力类型、N个压力类型分别对应的施压对象及施压对象个数、N个压力类型分别对应的施压工具及施压工具的压力级别,在测试运行周期内通过云平台监控系统监控云平台的运行获取测试运行结果。由于每一次的压力注入路径的选择,是根据不同压力类型、压力类型对应的施压对象及施压对象个数、压力类型对应的施压工具及施压工具的压力级别进行随机的选择的,因此可最大程度上模拟云平台的真实应用场景下混合、叠加业务,挖掘真实应用场景中业务长时间运行后数据累积可能产生的性能问题,相比较相关技术中的基于单点的压力注入模型下的性能测试,本申请的测试结果更加全面,提高了测试的准确性。
本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,当云平台性能测试装置的至少一个处理器执行该执行指令时,云平台性能测试装置执行上述图1所示的云平台性能测试方法。
本申请还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。云平台性能测试装置的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得云平台性能测试装置实施上述图1所示的云平台性能测试方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种云平台性能测试方法,其特征在于,包括:
在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,所述压力注入路径包括被选的N个压力类型、所述N个压力类型分别对应的施压对象及施压对象个数、所述N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,其中,所述压力类型为云平台中引发性能问题的压力种类,所述施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,施压规格范围为所述施压对象的数量的范围,所述施压工具为进行压力注入的工具集合或程序集合;
根据所选的压力注入路径进行压力注入;
在所述测试运行周期内通过云平台监控系统监控所述云平台的运行获取测试运行结果。
2.根据权利要求1所述的方法,其特征在于,所述根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,包括:
从所述压力类型集合中选择所述N个压力类型;
确定所述N个压力类型分别对应的施压对象,根据所述施压规格范围随机选择所述N个压力类型分别对应的施压对象个数;
确定所述N个压力类型分别对应的施压工具,根据所述施压工具的压力级别范围随机选择所述N个压力类型分别对应的施压工具的压力级别。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所选的压力注入路径进行压力注入,包括:
根据所述N个压力类型分别对应的施压对象及施压对象个数、所述N个压力类型分别对应的施压工具和所述N个压力类型分别对应的施压工具的压力级别进行压力注入。
4.根据权利要求1或2所述的方法,其特征在于,所述压力类型包括业务层负载、管理层系统资源和用户操作;
所述业务层负载对应的施压对象为虚拟机,所述管理层系统资源对应的施压对象为管理节点,所述用户操作对应的施压对象为模拟用户前台界面操作和开放应用程序接口调用。
5.根据权利要求4所述的方法,其特征在于:
所述业务层负载包括计算密集型业务、内存密集型业务、存储密集型业务和网络密集型业务;
所述计算密集型业务对应的施压工具为中央处理器CPU基准工具集合,所述内存密集型业务对应的施压工具为内存基准工具集合,所述存储密集型业务对应的施压工具为网络基准工具集合,所述网络密集型业务对应的施压工具为存储基准工具集合;
所述管理层系统资源包括:管理层CPU资源、管理层内存资源、管理层存储资源和管理层网络资源;
所述管理层CPU资源对应的施压工具为CPU消耗程序集合,所述管理层内存资源对应的施压工具为内存消耗程序集合,所述管理层存储资源对应的施压工具为存储输入输出IO消耗程序集合,所述管理层网络资源对应的施压工具为网络IO消耗、网络中断注入程序集合;
所述用户操作包括所述云平台提供的计算类、存储类和网络类面向用户的云服务可供用户执行的操作;
所述用户操作对应的施压工具为模拟用户操作的程序集合。
6.一种云平台性能测试装置,其特征在于,包括:
压力注入模块,用于在预设的测试运行周期内,对正在运行中的云平台在每一预设压力注入时间间隔点进行如下操作:
根据预存的压力类型集合、施压对象集合、施压规格范围、施压工具集合和施压工具的压力级别范围随机选择一条压力注入路径,所述压力注入路径包括被选的N个压力类型、所述N个压力类型分别对应的施压对象及施压对象个数、所述N个压力类型分别对应的施压工具及施压工具的压力级别,N≥1,其中,所述压力类型为云平台中引发性能问题的压力种类,所述施压对象为云平台的应用系统和管理系统中产生性能瓶颈的对象,施压规格范围为所述施压对象的数量的范围,所述施压工具为进行压力注入的工具集合或程序集合;
根据所选的压力注入路径进行压力注入;
获取模块,用于在所述测试运行周期内通过云平台监控系统监控所述云平台的运行获取测试运行结果。
7.根据权利要求6所述的装置,其特征在于,所述压力注入模块具体用于:
从所述压力类型集合中选择所述N个压力类型;
确定所述N个压力类型分别对应的施压对象,根据所述施压规格范围随机选择所述N个压力类型分别对应的施压对象个数;
确定所述N个压力类型分别对应的施压工具,根据所述施压工具的压力级别范围随机选择所述N个压力类型分别对应的施压工具的压力级别。
8.根据权利要求6或7所述的装置,其特征在于,所述压力注入模块具体用于:
根据所述N个压力类型分别对应的施压对象及施压对象个数、所述N个压力类型分别对应的施压工具和所述N个压力类型分别对应的施压工具的压力级别进行压力注入。
9.根据权利要求6或7所述的装置,其特征在于,所述压力类型包括业务层负载、管理层系统资源和用户操作;
所述业务层负载对应的施压对象为虚拟机,所述管理层系统资源对应的施压对象为管理节点,所述用户操作对应的施压对象为模拟用户前台界面操作和开放应用程序接口调用。
10.根据权利要求9所述的装置,其特征在于:
所述业务层负载包括计算密集型业务、内存密集型业务、存储密集型业务和网络密集型业务;
所述计算密集型业务对应的施压工具为中央处理器CPU基准工具集合,所述内存密集型业务对应的施压工具为内存基准工具集合,所述存储密集型业务对应的施压工具为网络基准工具集合,所述网络密集型业务对应的施压工具为存储基准工具集合;
所述管理层系统资源包括:管理层CPU资源、管理层内存资源、管理层存储资源和管理层网络资源;
所述管理层CPU资源对应的施压工具为CPU消耗程序集合,所述管理层内存资源对应的施压工具为内存消耗程序集合,所述管理层存储资源对应的施压工具为存储输入输出IO消耗程序集合,所述管理层网络资源对应的施压工具为网络IO消耗、网络中断注入程序集合;
所述用户操作包括所述云平台提供的计算类、存储类和网络类面向用户的云服务可供用户执行的操作;
所述用户操作对应的施压工具为模拟用户操作的程序集合。
CN201710607864.3A 2017-07-24 2017-07-24 云平台性能测试方法及装置 Active CN107547261B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710607864.3A CN107547261B (zh) 2017-07-24 2017-07-24 云平台性能测试方法及装置
PCT/CN2018/096688 WO2019019975A1 (zh) 2017-07-24 2018-07-23 云平台性能测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710607864.3A CN107547261B (zh) 2017-07-24 2017-07-24 云平台性能测试方法及装置

Publications (2)

Publication Number Publication Date
CN107547261A CN107547261A (zh) 2018-01-05
CN107547261B true CN107547261B (zh) 2020-10-27

Family

ID=60970360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710607864.3A Active CN107547261B (zh) 2017-07-24 2017-07-24 云平台性能测试方法及装置

Country Status (2)

Country Link
CN (1) CN107547261B (zh)
WO (1) WO2019019975A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107547261B (zh) * 2017-07-24 2020-10-27 华为技术有限公司 云平台性能测试方法及装置
CN109408364A (zh) * 2018-08-28 2019-03-01 深圳壹账通智能科技有限公司 软件产品的性能分析方法、装置、终端及计算机存储介质
CN110968495A (zh) * 2018-09-29 2020-04-07 浙江大学 一种容器云平台性能评估方法及装置
CN110971478B (zh) * 2018-09-30 2022-04-26 北京奇虎科技有限公司 云平台服务性能的压测方法、装置及计算设备
CN109450743A (zh) * 2019-01-24 2019-03-08 紫光云数科技有限公司 物联网平台压力测试系统、方法、装置及服务器
CN111124853B (zh) * 2019-11-22 2022-08-23 福建升腾资讯有限公司 一种基于cpu性能的云桌面规模评估系统及方法
CN111488284B (zh) * 2020-04-14 2023-04-21 上海仪电(集团)有限公司中央研究院 一种用于OpenStack云平台的模拟操作主动检测方法
CN111666197B (zh) * 2020-06-05 2024-05-24 北京百度网讯科技有限公司 压力测试方法和装置、电子设备以及计算机可读介质
CN113760672A (zh) * 2020-11-17 2021-12-07 北京沃东天骏信息技术有限公司 多云平台资源的性能测试方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023967A (zh) * 2012-11-15 2013-04-03 武汉邮电科学研究院 基于simics系统模拟器的云计算仿真系统及方法
CN104155879A (zh) * 2013-05-14 2014-11-19 洛克威尔自动控制技术股份有限公司 用于自动控制系统的仿真的系统和方法
CN104333488A (zh) * 2014-11-04 2015-02-04 哈尔滨工业大学 云服务平台性能测试方法
CN104378252A (zh) * 2014-08-26 2015-02-25 国家电网公司 一种云测试服务平台
EP2988454A1 (en) * 2013-04-19 2016-02-24 ZTE Corporation Network device detecting method and apparatus, and cloud detection system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130343181A1 (en) * 2012-06-21 2013-12-26 Jonathan Stroud Systems and methods of data processing using an fpga-implemented hash function
MY167175A (en) * 2013-12-03 2018-08-13 Mimos Berhad A system and method for emulating multiple independent wireless client devices in the cloud
CN104866408B (zh) * 2014-02-20 2017-12-22 阿里巴巴集团控股有限公司 一种应用系统的容量预测方法和装置
CN104331477B (zh) * 2014-11-04 2017-08-25 哈尔滨工业大学 基于联邦式检索的云平台并发性能测试方法
CN106776289A (zh) * 2016-11-24 2017-05-31 山东交通学院 多任务自适应云测试方法
CN107547261B (zh) * 2017-07-24 2020-10-27 华为技术有限公司 云平台性能测试方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023967A (zh) * 2012-11-15 2013-04-03 武汉邮电科学研究院 基于simics系统模拟器的云计算仿真系统及方法
EP2988454A1 (en) * 2013-04-19 2016-02-24 ZTE Corporation Network device detecting method and apparatus, and cloud detection system
CN104155879A (zh) * 2013-05-14 2014-11-19 洛克威尔自动控制技术股份有限公司 用于自动控制系统的仿真的系统和方法
CN104378252A (zh) * 2014-08-26 2015-02-25 国家电网公司 一种云测试服务平台
CN104333488A (zh) * 2014-11-04 2015-02-04 哈尔滨工业大学 云服务平台性能测试方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"A Testing Engine for High-Performance and Cost-Effective Workflow Execution in the Cloud";V.K. Pallipuram 等;《2015 44th International Conference on Parallel Processing》;20151210;第849-858页 *
"Automatic performance analysis of cloud based load testing of web-application & its comparison with traditional load testing";Muhammad Arslan 等;《2015 6th IEEE International Conference on Software Engineering and Service Science 》;20151130;第140-144页 *
"一种自适应的Web压力测试模型";李杰;《计算机工程与应用》;20060111;第90-92页 *

Also Published As

Publication number Publication date
CN107547261A (zh) 2018-01-05
WO2019019975A1 (zh) 2019-01-31

Similar Documents

Publication Publication Date Title
CN107547261B (zh) 云平台性能测试方法及装置
CN103092751B (zh) 一种云环境下基于用户行为模型的web应用性能测试系统
CN102479151B (zh) 一种网页访问速度的测试方法及装置
CN106648556B (zh) 前后端集成开发测试的方法及装置
CN106487603B (zh) 一种响应测试方法及装置
CN103544103A (zh) 一种软件性能测试模拟并发方法及系统
CN109309596B (zh) 一种压力测试方法、装置及服务器
CN107659455B (zh) 一种iOS端Mock数据的方法、存储介质、设备及系统
JP2017514218A (ja) サードパーティアプリケーションの実行
CN107608901B (zh) 基于Jmeter的测试方法及装置、存储介质、电子设备
CN111522728A (zh) 自动化测试用例的生成方法、电子设备及可读存储介质
US10671506B2 (en) Evaluating fairness in devices under test
Willnecker et al. Comparing the accuracy of resource demand measurement and estimation techniques
CN102999419A (zh) 一种Android测试事件记录回放方法及装置
CN107220165A (zh) 一种模拟线上压力测试的方法和装置
CN112559335A (zh) 测试方法、装置、设备和存储介质
CN112052070A (zh) 应用容器化评估方法、装置、电子设备及存储介质
CN112564996A (zh) 压力测试流量调度、控制方法、设备以及计算机可读介质
CN110705191A (zh) 一种多形态模拟仿真验证环境的构建方法
CN110069395B (zh) 一种模拟异步接口的方法、装置、存储介质及计算机设备
CN111078527B (zh) 用于对服务器进行压力测试的辅助系统以及方法
CN114168456A (zh) 一种基于3d-gis的前端性能自动化测试方法
CN104239199A (zh) 虚拟机器人的生成方法、自动化测试方法及相关装置
CN101470660A (zh) 通过子系统效能基准发生器进行系统测试的方法
CN113742226B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220207

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right