CN106850321A - 一种集群服务器的模拟测试系统 - Google Patents
一种集群服务器的模拟测试系统 Download PDFInfo
- Publication number
- CN106850321A CN106850321A CN201710217855.3A CN201710217855A CN106850321A CN 106850321 A CN106850321 A CN 106850321A CN 201710217855 A CN201710217855 A CN 201710217855A CN 106850321 A CN106850321 A CN 106850321A
- Authority
- CN
- China
- Prior art keywords
- simulation
- module
- index
- test
- cluster server
- 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 121
- 238000004088 simulation Methods 0.000 claims abstract description 124
- 238000003860 storage Methods 0.000 claims abstract description 37
- 230000002085 persistent effect Effects 0.000 claims abstract description 17
- 238000005070 sampling Methods 0.000 claims abstract description 10
- 238000004458 analytical method Methods 0.000 claims abstract description 7
- 238000004364 calculation method Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 15
- 238000000034 method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 5
- 239000007787 solid Substances 0.000 claims description 3
- 230000002688 persistence Effects 0.000 abstract 1
- 230000006872 improvement Effects 0.000 description 8
- 238000011056 performance test Methods 0.000 description 8
- 238000011156 evaluation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000010972 statistical evaluation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/022—Capturing of monitoring data by sampling
- H04L43/024—Capturing of monitoring data by sampling by adaptive sampling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种集群服务器的模拟测试系统,包括自动测试模块,根据输入预定义的关键指标模板生成测试用例,以生成模拟集群服务器操作的REST请求;模拟模块,用于模拟计算环境下对REST请求作出响应;收集模块,用于采集模拟模块在模拟测试过程中所产生的指标数据,并对指标数据作序列化处理;持久化存储介质,保存经过序列化处理的指标数据;分析模块,自持久化存储介质中调用经过序列化处理的指标数据,并根据关键指标模板生成单次模拟测试报告;报告模块,将多份单次模拟测试报告进行汇总并进行数理抽样统计后输出指标汇总结果。通过发明,实现了对集群服务器的各项性能作出真实且准确的模拟测试,降低了模拟测试系统的成本及部署成本。
Description
技术领域
本发明涉及云计算的性能测试及评估技术领域,尤其涉及一种集群服务器的模拟测试系统。
背景技术
性能测试是云平台、集群服务器或者应用上线前的一项重要工作。进行性能测试的目的在于对云平台或者集群服务器可支持虚拟机的数量、峰值请求的规模、数据库的最大请求的规模、消息队列访问量等诸多云计算指标进行测试与评价。
目前存在三种性能测试工具,即WebStone、WebBench、SPECWeb99。上述性能测试工具虽然功能强大,结果客观权威,但是它们在集群服务器性能测试存在难以产生足够数量的客户请求,因此需要占用或者使用大量的物理计算机来运行客户端程序,才能生成集群服务器在真实运行环境中所面临的负载以进行性能检测及评价。如果需要对集群服务器测试超载情况实例中的性能,则需要更多运行客户端程序的物理计算机。因此,上述三种性能测试工具及其基于该等测试工具的性能测试方法存在测试成本较高,测试时间较长的缺陷,维护成本较高。
此外,现有技术中对集群服务器进行性能测试的方法/系统/装置/工具存在功能单一的问题,即在现有技术中仅能对集群服务器的某一种性能,例如Web测试、软件测试等。因此,现有技术中的大多数测试工具无法对网络、磁盘吞吐峰值、CPU或者内存使用等诸多方面进行综合性能测试。此外,还存在过分偏重某一种性能指标的认定,导致对集群服务器的性能测试存在一定的片面性与局限性,无法从全局角度对集群服务器的性能作综合评价,并且无法在部署、测试、模拟、评价等多个方面提供一体化解决方案。
有鉴于此,有必要对现有技术中对集群服务器的模拟测试系统予以改进,以解决上述问题。
发明内容
本发明的目的在于公开一种集群服务器的模拟测试系统,用以实现真实的模拟云计算环境中的集群服务器的状态,实现对集群服务器的各项性能作出真实且准确的模拟测试,同时降低传统的对集群服务器进行性能模拟测试的测试系统的成本,以显著降低部署成本。
为实现上述目的,本发明提供了一种集群服务器的模拟测试系统,其包括:
自动测试模块,根据输入预定义的关键指标模板生成测试用例,以生成模拟集群服务器操作的REST请求;
模拟模块,用于模拟计算环境下对REST请求作出响应;
收集模块,用于采集模拟模块在模拟测试过程中所产生的指标数据,并对指标数据作序列化处理;
持久化存储介质,保存经过序列化处理的指标数据;
分析模块,自持久化存储介质中调用经过序列化处理的指标数据,并根据关键指标模板生成单次模拟测试报告;
报告模块,将多份单次模拟测试报告进行汇总并进行数理抽样统计后输出指标汇总结果。
作为本发明的进一步改进,所述模拟模块包括:由部署在容器外的预处理模块及压力执行模块,以及模拟计算驱动所组成的模拟计算模块;
其中,预处理模块用于接收输入需要模拟的测试类型、测试请求和测试响应,并生成压力测试;
压力执行模块用于记录压力测试记录;
模拟计算驱动用于远程调用压力执行模块中保存的压力测试记录,并模拟真实计算驱动对压力测试所作出的响应,并向压力执行模块作反馈。
作为本发明的进一步改进,所述自动测试模块通过调用Jmeter或者Rally构造用户发送的REST请求,以模拟用户对集群服务器的真实操作。
作为本发明的进一步改进,所述关键指标模板由数据库指标模板、消息队列指标模板、OSAPI指标模板中的一种或者多种组成。
作为本发明的进一步改进,所述数据库指标模板包含:QPS指标、TPS指标、Commit/S指标、Con/S指标;
所述消息队列指标模板包含msg/S指标、延迟指标、吞吐指标;
所述OSAPI指标模板包含单位处理请求数指标。
作为本发明的进一步改进,所述模拟计算驱动部署于基于Docker的容器中,以抽象和模拟集群服务器的底层服务细节。
作为本发明的进一步改进,所述模拟模块还包括模拟网络模块及模拟存储模块,所述模拟计算模块、模拟网络模块及模拟存储模块通过消息队列与OSAPI相连。
作为本发明的进一步改进,所述集群服务器操作包括:增加操作、查询操作、修改操作、修补操作、删除操作及其上述操作的排列组合。
作为本发明的进一步改进,经过序列化处理后的指标数据以日志、二进制数据流、数字指纹、数字签名、音频的形式保存于持久化存储介质中;
所述持久化存储介质包括数据库、机械磁盘、固态硬盘、RAID、NVDIMM或者光盘;其中,
所述数据库包括:网状数据库、关系数据库、树状数据库或者面向对象数据库。
作为本发明的进一步改进,所述数理抽样统计具体为:对保存于数据库中的多份有效样本进行置信区间计算,以输出指标报告;其中,多份有效样本进行置信区间的计算所采用的置信水平取0.9、0.95或者0.99。
与现有技术相比,本发明的有益效果是:在本发明中,通过用户输入的自定义的关键指标模板,实现了对集群服务器在云计算环境中根据已有评价数据建立准确的评价测试模型,并通过数理抽样统计实现了对集群服务器的各项性能作出真实且准确的模拟测试,同时降低了模拟测试系统的成本,从而显著地降低了部署成本。
附图说明
图1为现有技术中待模拟测试的集群服务器的拓扑图;
图2为对集群服务器进行模拟测试的模拟模块的拓扑图;
图3为单次模拟测试流程图;
图4为样本分析流程图;
图5为模拟前的计算集群中的一个物理计算节点的拓扑图;
图6为模拟计算驱动对计算集群中的一个物理计算节点进行模拟后的拓扑图;
图7为模拟计算模块进行关键指标测试时的时序图;
图8为模拟计算模块内部交互的时序图。
具体实施方式
下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
在详细阐述本发明之前,首先对说明书中的主要技术术语及其定义作出简要阐述。
术语“JMeter”:apache提供的开源测试框架。
术语“openstack”:开源的云计算项目。
术语“OSAPI”:openstack应用程序接口,一种程序的逻辑抽象。
术语“Rally”:openstack提供的基准测试工具。
术语“Docker”:一种开源的容器项目。
术语“REST”:一种设计风格,旨在用简单的请求用于交互,常用的RESTful请求有GET/POST/PUT/DELETE/PATCH。
术语“mysql”及“mariadb”:mysql是一种开源数据库,mariadb是mysql的一个衍生分支。
术语“QPS”:query per second,其为数据库性能评测的指标之一。
JMeter是Apache组织开发的基于java的压力模拟工具,相比其他HTTP测试工具,JMeter最主要的特点在于扩展性强,目前已大量应用在各个公司的性能测试过程中。它提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,实现了强大的测试功能并能够提供聚合报告,当build一项任务时,在若干任务中查找所需的任务,运行结束后生成HTML报告(Report),并查看测试的输出结果。生成的报告上显示了每次测试运行的结果,包括测试状态、时间、数据执行顺序以及所有测试花费的时间,使用户或测试开发者直观的掌握整体测试状况、查看测试报告结果。
请参图1至图8所示出的本发明一种集群服务器的模拟测试系统的一种具体实施方式。
参图7及图8所示,该集群服务器的模拟测试系统,包括:自动测试模块99,根据输入预定义的关键指标模板生成测试用例,以生成模拟集群服务器操作的REST请求;模拟模块100,用于模拟计算环境下对REST请求作出响应;收集模块101,用于采集模拟模块100在模拟测试过程中所产生的指标数据,并对指标数据作序列化处理;持久化存储介质102,保存经过序列化处理的指标数据;分析模块103,自所述持久化存储介质102中调用经过序列化处理的指标数据,并根据关键指标模板生成单次模拟测试报告;报告模块104,将多份单次模拟测试报告进行汇总并进行数理抽样统计后输出指标汇总结果。其中,所述关键指标模板由数据库指标模板、消息队列指标模板、OSAPI指标模板中的一种或者多种组成。本实施方式示出的一种集群服务器的模拟测试系统的流程请参图3及图4所示。
数据库指标模板(目前仅限于mysql/mariadb系列)广义上主要是QPS指标,并通过QPS指标用来描述在不同存储引擎,不同缓存、索引配置下的集群服务器中的数据库性能。表1为数据库指标模板示例。其他用于表征数据库指标模板的关键指标还可包括:TPS指标(Transactions per Second,每秒事务数),Commit/s指标(每秒提交数),Con/s指标(线程连接数)等。
待测 | 存储引擎 | 是否有缓存 | 是否有索引 | … |
QPS指标 | ||||
TPS指标 | ||||
Commit/s指标 | ||||
Con/s指标 |
表1
消息队列指标模板,广义上主要是msg/s指标(每秒消息数),用来描述在不同配置情况下消息队列处理消息的能力。表2为消息队列模板的示例。其他用于表征消息队列的关键指标还可包括:latency(延迟指标),throughput(吞吐指标,即生产/消费比)。
其中,消息队列延迟模板的示例如下表3所示。
Latency指标 | 10 | 20 | 30 | … |
Throughput指标 | ||||
msg/s指标 |
表2
延迟指标 | 10 | 20 | 30 | … |
生产/消费数量指标 |
表3
OSAPI指标模板,其包含单位处理请求数指标,主要包括用于模拟集群服务器在云计算环境中的GET操作、POST操作、PUT操作、PATCH操作、DELETE操作等操作或者上述操作的排列组合,用来描述集群服务器对用户发起的REST请求的处理能力。表4为OSAPI指标模板的一种示例。
峰值/延迟 | GET操作 | POST操作 | PUT操作 | … |
请求数目 |
表4
模拟模块100主要分为三部分,即模拟计算模块80、模拟网络模块70、模拟存储模块60。如图1及图2所示,模拟用户发起的REST请求从OSAPI10进入到消息队列20,最终通过计算集群50、网络集群40、存储集群30的逻辑进行下一步操作。模拟模块100的主要目标是模拟REST请求的回应,不继续下发底层操作,缩短消息路径。模拟模块100基于Docker的容器部署,用以抽象底层服务细节,节省部署开销,降低部署成本,提高单位物理机的利用效率。
计算服务和模拟计算驱动803均部署于基于Docker的容器中,不执行下发底层操作,可以在一台物理机上同时部署运行多个容器,具体数目视具体物理机而定。例如,一台物理机,Intel(R)Xeon(R)CPU E5-2640v3@2.60GHz,200G内存,可以部署100~200个容器,以模拟100-200个计算节点。
具体的,在本实施方式中,所述集群服务器操作包括:增加操作(POST)、查询操作(GET)、修改操作(PUT)、修补操作(PATCH)、删除操作(DELETE)及其上述操作的排列组合。所述操作是指,对集群服务器在Openstack架构的云计算平台在真实环境中所执行的各种操作。
配合参照图5及图6所示,在本实施方式中,该模拟模块100选用模拟计算模块80。该模拟计算模块80包括:预处理模块801、压力执行模块802及模拟计算驱动(Fake Driver)803。其中,预处理模块801与压力执行子802模块部署在容器外,根据关键指标模板定义模拟细节,并触发压力请求。模拟计算驱动(Fake Driver)803用于集群服务器真实的模拟计算驱动,以对集群服务器的物理计算节点的计算能力做出真实的模拟测试。模拟计算驱动803部署于基于Docker的容器中,以抽象和模拟集群服务器的底层服务细节。
如图6所示,该模拟计算驱动803包括:Init_host、(un)plug_vifs、Spawn、Snapshot、Reboot、power_off等命令。结合图5及图6可知,在本实施方式中,模拟计算驱动803可对计算集群50中的一个物理计算节点中模拟该物理计算节点的真实计算驱动对REST请求所作出的相应响应。计算服务,配合模拟计算驱动803可以在同一物理的计算节点上部署多个实例,从而最大程度上利用了物理资源。本实施方式所示出的模拟测试系统对集群服务的模拟测试方式/系统,在传统的集群服务器的部署过程中是无法实现的。
具体的,预处理模块801用于接收输入需要模拟的测试类型、测试请求和测试响应,并生成压力测试;压力执行模块802用于记录压力测试记录;模拟计算驱动803用于远程调用压力执行模块802中保存的压力测试记录,并模拟集群服务器的真实计算驱动对压力测试所作出的响应,并向压力执行模块802作反馈。
参图1及图2所示,该模拟模块100包括模拟计算模块80、模拟网络模块70及模拟存储模块60。模拟计算模块80、模拟网络模块70及模拟存储模块60通过消息队列20与OSAPI10相连。REST请求从OSAPI10进入消息队列20,并最终从分别从计算集群50、网络集群40及存储集群30的逻辑进行下一步操作。
在图2中,模拟计算模块80、模拟网络模块70、模拟存储模块60都结合基于Doker的容器进行部署,用来模拟图1中对应集群服务器(即,计算集群50、网络集群40及存储集群30)的响应。其中,模拟网络模块70和模拟存储模块60这两部分不是必须的,且这两部分的模拟测试可以作为独立的测试项目进行模拟测试。
用户向自动测试模块99进行用户定义,以确定不同测试类型,并输入关键指标模板。该自动测试模块99通过调用压力模拟工具(例如JMeter或者Rally)构造用户发送的REST请求,以模拟用户在云计算环境中集群服务器所执行的增加操作、查询操作、修改操作或者删除操作等真实操作。
在本实施方式中,模拟模块100用于模拟集群服务器操作的REST请求,并可基于Docker的容器部署,用以抽象底层服务细节,节约部署开销。
参图7所示,本实施方式中的模拟模块100为模拟计算模块80。结合图8所示,模拟计算模块80的主要功能包括:定义测试类型,确定测试属于正常测试,不同的测试类型会生成不同的测试用例,并生成不同的响应信息;定义测试响应,根据测试类型,确定模拟延迟、超时、响应信息;定义测试细节,用以确定REST请求的细节,并具体包括增加操作请求的百分比、查询操作请求的百分比、修改操作请求的百分比、修补操作请求的百分比、删除操作请求的百分比。当然,如果模拟模块100中包含模拟网络模块70或者模拟存储模块60,还需要生成模拟网络模块70及模拟存储模块60的逻辑,如果没有需求,则选择默认的网络设置及存储方式。
收集模块101用于采集模拟模块100(在本实施方式中具体为模拟计算模块80)在模拟测试过程中所产生的指标数据,并对指标数据作序列化处理。在模拟测试过程中所产生的关键指标数据分别由云集群服务器、云服务、系统模拟模块产生在不同的逻辑位置,并以日志等形式保存至持久化存储介质102中,以存档及后续处理。
优选的,经过序列化处理后的指标数据优选以日志的形式进行存储,并保存至持久化存储介质102中,并具体为保存至数据库中,以便于后期的归档、查询及检索操作。在本实施方式中,需要对指标数据通过收集模块101进行过滤和分离,并对指标数据作序列化处理,尤其需要分离出与关键指标模板中关联的数据,以便于后期的对上述指标数据作存档和数理抽样统计操作。
具体的,该持久化存储介质102包括数据库、二进制数据流、数字指纹、数字签名或者音频等形式进行存储;优选的,该持久化存储介质102包括数据库、机械磁盘、固态硬盘、RAID、NVDIMM或者光盘;其中,所述数据库包括:网状数据库、关系数据库、树状数据库或者面向对象数据库。
需要说明的是,在本实施方式所输出的一种集群服务器的模拟测试系统中,不同的关键指标模板具有不同的关键指标数据的收集途径。被收集模块所收集到的关键指标数据进行收集后,还需要对这些关键指标数据进行数据过滤处理并存储至持久化存储介质102中,以确保收集模块101所收集到的关键指标数据能够被数据库(持久化存储介质102的一种具体实现形式)可读并保存于数据库中。
分析模块103可根据关键指标模板生成单次的测试报告,并将形成的有效的数据样本保存于数据库中。累积多次有效样本后即可通过报告模块104启动样本分析流程,并输出指标报告,以得到最终的指标结果汇总。
在本实施方式中,该对多份单次的模拟测试报告(即下文所述的“有效样本”)进行汇总后对这些多份单次的模拟测试报告做数理抽样统计具体为:对保存于数据库中的多份有效样本进行置信区间计算,以输出指标报告;其中,多份有效样本进行置信区间的计算所采用的置信水平取0.9、0.95或者0.99。在本具体实施方式中,所采用的置信水平取0.95。具体的,对多份有效样本进行数理抽样统计,并进行评价的核心计算方法如下文所示。下文所述的“样本”与“有效样本”具有等同的技术含义。
已给定置信水平为1-α,并设X1,X2,...,Xn,为总体N(μ,σ2)的样本,S2分别是样本均值和方差。
S2是σ2的无偏估计,且即处理后的样本服从标准正太分布。
当σ2未知时,σ可以由替换,可由定理替换知
t(n-1)分布不依赖于为止参数,由其特性可知:
即
于是得到μ的一个置信水平为1-α的置信区间为其中,S2是σ2的无偏估计,根据定理可知
由卡方分布的特点可知:
即
可以得到标准差σ的一个置信水平为1-α的置信区间为:
样本统计评价核心计算方法示例
以下以样本数n=101,置信水平1-α=0.95举例,并作示范性说明。
α/2=0.025,n-1=100,t0.025(100)=1.984
QPS指标样本均值则均值μ的一个置信水平为0.95的置信区间为即(500.409,507.591)。
1-α/2=0.975,
s=18.1020,标准差σ的一个置信水平为0.95的置信区间为
即:(15.904,21.012)
因此,可以得出结论:在某种特定的集群服务器的结构下,均值μ的一个置信水平为0.95的置信区间为(500.409,507.591),标准差σ的一个置信水平为0.95的置信区间为(15.904,21.012);反推亦生效。
因此,根据采集到的指标数据,可以定义规模集群服务器的性能报告,用来参考标定相似规模集群服务器的性能,并可具体用于表征集群服务器中的存储集群30、网络集群40或者计算集群50在上线后对用户发起的各种操作的响应能力与真实性能。
表5举例说明了通过本发明所示出的一种集群服务器的模拟测试系统对一个具体的集群服务器进行模拟测试后所得到的样本报告及配置建议。
表5
通过本实施方式,可对集群服务器在云计算环境中的各项性能指标进行建模统计,并基于历史数据对现有的集群服务器提出优化选项及其具体优化建议,提高了集群服务器的部署效率,并有效地减低了集群服务器的部署成本,更重要的是通过本实施方式显著降低了对集群服务器进行模拟检测的测试成本。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (10)
1.一种集群服务器的模拟测试系统,其特征在于,包括:
自动测试模块,根据输入预定义的关键指标模板生成测试用例,以生成模拟集群服务器操作的REST请求;
模拟模块,用于模拟计算环境下对REST请求作出响应;
收集模块,用于采集模拟模块在模拟测试过程中所产生的指标数据,并对指标数据作序列化处理;
持久化存储介质,保存经过序列化处理的指标数据;
分析模块,自持久化存储介质中调用经过序列化处理的指标数据,并根据关键指标模板生成单次模拟测试报告;
报告模块,将多份单次模拟测试报告进行汇总并进行数理抽样统计后输出指标汇总结果。
2.根据权利要求1所述的集群服务器的模拟测试系统,其特征在于,所述模拟模块包括:由部署在容器外的预处理模块及压力执行模块,以及模拟计算驱动所组成的模拟计算模块;
其中,预处理模块用于接收输入需要模拟的测试类型、测试请求和测试响应,并生成压力测试;
压力执行模块用于记录压力测试记录;
模拟计算驱动用于远程调用压力执行模块中保存的压力测试记录,并模拟真实计算驱动对压力测试所作出的响应,并向压力执行模块作反馈。
3.根据权利要求1或者2所述的集群服务器的模拟测试系统,其特征在于,所述自动测试模块通过调用Jmeter或者Rally构造用户发送的REST请求,以模拟用户对集群服务器的真实操作。
4.根据权利要求1或者2所述的集群服务器的模拟测试系统,其特征在于,所述关键指标模板由数据库指标模板、消息队列指标模板、OSAPI指标模板中的一种或者多种组成。
5.根据权利要求4所述的集群服务器的模拟测试系统,其特征在于,所述数据库指标模板包含:QPS指标、TPS指标、Commit/S指标、Con/S指标;
所述消息队列指标模板包含msg/S指标、延迟指标、吞吐指标;
所述OSAPI指标模板包含单位处理请求数指标。
6.根据权利要求2所述的集群服务器的模拟测试系统,其特征在于,所述模拟计算驱动部署于基于Docker的容器中,以抽象和模拟集群服务器的底层服务细节。
7.根据权利要求2所述的集群服务器的模拟测试系统,其特征在于,所述模拟模块还包括模拟网络模块及模拟存储模块,所述模拟计算模块、模拟网络模块及模拟存储模块通过消息队列与OSAPI相连。
8.根据权利要求3所述的集群服务器的模拟测试系统,其特征在于,所述集群服务器操作包括:增加操作、查询操作、修改操作、修补操作、删除操作及其上述操作的排列组合。
9.根据权利要求3所述的集群服务器的模拟测试系统,其特征在于,经过序列化处理后的指标数据以日志、二进制数据流、数字指纹、数字签名、音频的形式保存于持久化存储介质中;
所述持久化存储介质包括数据库、机械磁盘、固态硬盘、RAID、NVDIMM或者光盘;其中,
所述数据库包括:网状数据库、关系数据库、树状数据库或者面向对象数据库。
10.根据权利要求9所述的集群服务器的模拟测试系统,其特征在于,所述数理抽样统计具体为:对保存于数据库中的多份有效样本进行置信区间计算,以输出指标报告;其中,多份有效样本进行置信区间的计算所采用的置信水平取0.9、0.95或者0.99。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710217855.3A CN106850321A (zh) | 2017-04-05 | 2017-04-05 | 一种集群服务器的模拟测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710217855.3A CN106850321A (zh) | 2017-04-05 | 2017-04-05 | 一种集群服务器的模拟测试系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106850321A true CN106850321A (zh) | 2017-06-13 |
Family
ID=59142891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710217855.3A Pending CN106850321A (zh) | 2017-04-05 | 2017-04-05 | 一种集群服务器的模拟测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106850321A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107341081A (zh) * | 2017-07-07 | 2017-11-10 | 北京奇虎科技有限公司 | 测试系统及方法 |
CN108804238A (zh) * | 2018-03-29 | 2018-11-13 | 中国工程物理研究院计算机应用研究所 | 一种基于远程过程调用的软总线通信方法 |
CN108959574A (zh) * | 2018-07-06 | 2018-12-07 | 环旭电子股份有限公司 | 一种测试数据分析方法及系统 |
CN110188022A (zh) * | 2019-05-09 | 2019-08-30 | 国家计算机网络与信息安全管理中心 | 一种基于Java的集群性能测试方法及系统 |
CN110262959A (zh) * | 2019-05-09 | 2019-09-20 | 五八有限公司 | 底层服务压力测试方法、装置、电子设备及存储介质 |
CN111061610A (zh) * | 2019-12-09 | 2020-04-24 | 广州鼎甲计算机科技有限公司 | 集群系统性能测试报告的生成方法、装置和计算机设备 |
CN111061618A (zh) * | 2019-12-16 | 2020-04-24 | 南方电网数字电网研究院有限公司 | 云平台仿真系统、云平台性能测试方法和计算机设备 |
CN111177222A (zh) * | 2019-12-26 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 模型测试方法、装置及计算设备、存储介质 |
CN112685310A (zh) * | 2020-12-31 | 2021-04-20 | 杭州当虹科技股份有限公司 | 一种模拟测试云主机的方法 |
CN113448823A (zh) * | 2020-03-25 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 智能压测方法、装置、电子设备及计算机存储介质 |
CN114721922A (zh) * | 2022-05-16 | 2022-07-08 | 北京并行科技股份有限公司 | 一种服务器集群的性能评估方法、计算设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378252A (zh) * | 2014-08-26 | 2015-02-25 | 国家电网公司 | 一种云测试服务平台 |
CN104866402A (zh) * | 2015-05-12 | 2015-08-26 | 浪潮电子信息产业股份有限公司 | 一种测试服务器的方法及装置 |
CN105045710A (zh) * | 2015-06-30 | 2015-11-11 | 吉林大学 | 一种云计算环境下的自动化测试数据生成方法 |
CN105302717A (zh) * | 2015-09-30 | 2016-02-03 | 浪潮集团有限公司 | 一种大数据平台的检测方法及装置 |
CN105302721A (zh) * | 2015-10-29 | 2016-02-03 | 普元信息技术股份有限公司 | 云计算平台中实现集中模拟服务器集成测试的系统及方法 |
-
2017
- 2017-04-05 CN CN201710217855.3A patent/CN106850321A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104378252A (zh) * | 2014-08-26 | 2015-02-25 | 国家电网公司 | 一种云测试服务平台 |
CN104866402A (zh) * | 2015-05-12 | 2015-08-26 | 浪潮电子信息产业股份有限公司 | 一种测试服务器的方法及装置 |
CN105045710A (zh) * | 2015-06-30 | 2015-11-11 | 吉林大学 | 一种云计算环境下的自动化测试数据生成方法 |
CN105302717A (zh) * | 2015-09-30 | 2016-02-03 | 浪潮集团有限公司 | 一种大数据平台的检测方法及装置 |
CN105302721A (zh) * | 2015-10-29 | 2016-02-03 | 普元信息技术股份有限公司 | 云计算平台中实现集中模拟服务器集成测试的系统及方法 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107341081A (zh) * | 2017-07-07 | 2017-11-10 | 北京奇虎科技有限公司 | 测试系统及方法 |
CN108804238A (zh) * | 2018-03-29 | 2018-11-13 | 中国工程物理研究院计算机应用研究所 | 一种基于远程过程调用的软总线通信方法 |
CN108804238B (zh) * | 2018-03-29 | 2022-03-04 | 中国工程物理研究院计算机应用研究所 | 一种基于远程过程调用的软总线通信方法 |
CN108959574A (zh) * | 2018-07-06 | 2018-12-07 | 环旭电子股份有限公司 | 一种测试数据分析方法及系统 |
CN110188022A (zh) * | 2019-05-09 | 2019-08-30 | 国家计算机网络与信息安全管理中心 | 一种基于Java的集群性能测试方法及系统 |
CN110262959A (zh) * | 2019-05-09 | 2019-09-20 | 五八有限公司 | 底层服务压力测试方法、装置、电子设备及存储介质 |
CN110262959B (zh) * | 2019-05-09 | 2022-11-11 | 五八有限公司 | 底层服务压力测试方法、装置、电子设备及存储介质 |
CN111061610B (zh) * | 2019-12-09 | 2020-10-20 | 广州鼎甲计算机科技有限公司 | 集群系统性能测试报告的生成方法、装置和计算机设备 |
CN111061610A (zh) * | 2019-12-09 | 2020-04-24 | 广州鼎甲计算机科技有限公司 | 集群系统性能测试报告的生成方法、装置和计算机设备 |
CN111061618A (zh) * | 2019-12-16 | 2020-04-24 | 南方电网数字电网研究院有限公司 | 云平台仿真系统、云平台性能测试方法和计算机设备 |
CN111061618B (zh) * | 2019-12-16 | 2024-03-15 | 南方电网数字平台科技(广东)有限公司 | 云平台仿真系统、云平台性能测试方法和计算机设备 |
CN111177222A (zh) * | 2019-12-26 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 模型测试方法、装置及计算设备、存储介质 |
CN111177222B (zh) * | 2019-12-26 | 2023-03-03 | 腾讯云计算(北京)有限责任公司 | 模型测试方法、装置及计算设备、存储介质 |
CN113448823A (zh) * | 2020-03-25 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 智能压测方法、装置、电子设备及计算机存储介质 |
CN112685310A (zh) * | 2020-12-31 | 2021-04-20 | 杭州当虹科技股份有限公司 | 一种模拟测试云主机的方法 |
CN112685310B (zh) * | 2020-12-31 | 2024-04-23 | 杭州当虹科技股份有限公司 | 一种模拟测试云主机的方法 |
CN114721922A (zh) * | 2022-05-16 | 2022-07-08 | 北京并行科技股份有限公司 | 一种服务器集群的性能评估方法、计算设备及存储介质 |
CN114721922B (zh) * | 2022-05-16 | 2022-10-04 | 北京并行科技股份有限公司 | 一种服务器集群的性能评估方法、计算设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106850321A (zh) | 一种集群服务器的模拟测试系统 | |
US10127146B2 (en) | Systems and methods to identify and classify performance bottlenecks in cloud based applications | |
CN108255712B (zh) | 数据系统的测试系统和测试方法 | |
Verma et al. | Play it again, simmr! | |
US8983936B2 (en) | Incremental visualization for structured data in an enterprise-level data store | |
WO2019153487A1 (zh) | 系统性能的度量方法、装置、存储介质和服务器 | |
US10116534B2 (en) | Systems and methods for WebSphere MQ performance metrics analysis | |
US20140012561A1 (en) | Modeling and evaluating application performance in a new environment | |
CN111459698A (zh) | 一种数据库集群故障自愈方法及装置 | |
CN104516808A (zh) | 数据预处理装置及方法 | |
US20090307347A1 (en) | Using Transaction Latency Profiles For Characterizing Application Updates | |
CN111563014A (zh) | 接口服务性能测试方法、装置、设备和存储介质 | |
CN103257923B (zh) | 数据中心数据分析类基准测试程序的应用选取方法及系统 | |
CN110740079A (zh) | 一种面向分布式调度系统的全链路基准测试系统 | |
Han et al. | Benchmarking big data systems: State-of-the-art and future directions | |
CN115562978A (zh) | 基于业务场景的性能测试系统及方法 | |
US8245084B2 (en) | Two-level representative workload phase detection | |
Cao et al. | Timon: A timestamped event database for efficient telemetry data processing and analytics | |
KR101830936B1 (ko) | 데이터베이스와 애플리케이션을 위한 웹기반 성능개선 시스템 | |
CN114155054A (zh) | 一种基于kafka的大数据报表统计的测试方法及其系统 | |
Zou et al. | Improving log-based fault diagnosis by log classification | |
Ghanbari et al. | A query language and runtime tool for evaluating behavior of multi-tier servers | |
CN115248782B (zh) | 一种自动化测试方法、装置及计算机设备 | |
Ren et al. | Waxelephant: A realistic hadoop simulator for parameters tuning and scalability analysis | |
CN115860709A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170613 |
|
RJ01 | Rejection of invention patent application after publication |