CN116756020A - 性能评估方法、装置、终端设备以及存储介质 - Google Patents
性能评估方法、装置、终端设备以及存储介质 Download PDFInfo
- Publication number
- CN116756020A CN116756020A CN202310745711.0A CN202310745711A CN116756020A CN 116756020 A CN116756020 A CN 116756020A CN 202310745711 A CN202310745711 A CN 202310745711A CN 116756020 A CN116756020 A CN 116756020A
- Authority
- CN
- China
- Prior art keywords
- test
- performance
- cluster
- performance evaluation
- preset
- 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
- 238000011156 evaluation Methods 0.000 title claims abstract description 125
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000012360 testing method Methods 0.000 claims abstract description 328
- 238000011056 performance test Methods 0.000 claims abstract description 169
- 230000000977 initiatory effect Effects 0.000 claims abstract description 72
- 238000004458 analytical method Methods 0.000 claims abstract description 33
- 238000013101 initial test Methods 0.000 claims description 17
- 230000007547 defect Effects 0.000 claims 1
- 239000004065 semiconductor Substances 0.000 claims 1
- 238000000034 method Methods 0.000 abstract description 27
- 238000004519 manufacturing process Methods 0.000 abstract description 20
- 238000010586 diagram Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000009530 blood pressure measurement Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013215 result calculation Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
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)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种性能评估方法、装置、终端设备以及存储介质,其方法包括:通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。本发明解决了生产环境下性能测试评估无法常态化执行的问题,提高了性能评估的效率。
Description
技术领域
本发明涉及性能测试领域,尤其涉及一种性能评估方法、装置、终端设备以及存储介质。
背景技术
新建系统或是旧系统经过重大重构改造后,基于业务持续发展的性能容量需求,需要评估系统性能容量,发现性能问题并及时调优,保障业务处理稳定。
当前一般通过在测试环境发起非功能性测试,根据测试环境压测结果,评估生产环境系统性能容量,但是每次性能测试准备时间较长,开发人员难以快速获得系统性能容量结果,且测试结果由于环境差异等问题可能与生产环境实际情况相差较大。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种性能评估方法、装置、终端设备以及存储介质,旨在解决生产环境下性能测试评估无法常态化执行的技术问题。
为实现上述目的,本发明提供一种性能评估方法,所述性能评估方法包括:
通过预设的测试发起平台发起性能测试请求;
根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
对所述测试结果进行指标分析,获得测试报告。
可选的,所述通过预设的测试发起平台发起性能测试请求的步骤包括:
发起定时测试任务;
根据所述定时测试任务,通过调度模块获取测试计划;
根据所述测试计划,通过计划执行引擎发送测试指令至测试发起集群;
通过所述测试发起集群,发出性能测试请求。
可选的,所述根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果的步骤包括:
通过所述测试发起集群,将所述性能测试请求发送至路由应用集群;
通过所述路由应用集群,对所述性能测试请求进行识别,获得识别结果;
根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群;
将预设的测试数据输入所述业务服务性能测试集群,获得测试结果。
可选的,所述根据所述识别结果,通过所述性能测试请求将所测试计划发送至预设的业务服务性能测试集群的步骤之前还包括:
根据预设的分库系统架构,搭建业务服务性能测试集群。
可选的,所述对所述测试结果进行指标分析,获得测试报告的步骤包括:
通过所述测试发起集群将所述测试结果发送至展示模块;
通过所述展示模块对所述测试结果进行指标分析,获得测试报告。
可选的,所述将预设的测试数据输入所述业务服务性能测试集群,获得测试结果的步骤之前还包括:
根据预设的分库系统,建立初始测试分库;
将预设的测试数据库中的数据输入至所述初始测试分库,获得性能测试分库。
可选的,所述根据所述定时测试任务,通过调度模块获取测试计划的步骤之前还包括:
收集应用日志;
对所述应用日志进行解析,生成测试计划;
将所述测试计划发送至存储服务器。
本发明实施例还提出一种性能评估装置,所述性能评估装置包括:
发起模块,用于通过预设的测试发起平台发起性能测试请求;
测试模块,用于根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
指标分析模块,用于对所述测试结果进行指标分析,获得测试报告。
本发明实施例还提出了一种终端设备所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的性能评估程序,所述性能评估程序被所述处理器执行时实现如上所述的性能评估方法的步骤。
本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质上存储有性能评估程序,所述性能评估程序被处理器执行时实现如上所述的性能评估方法的步骤。
本发明实施例提出的一种性能评估方法,通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。实现了便捷、有效地完成性能容量评估,解决了生产环境下性能测试评估无法常态化执行的问题,提高了性能评估的效率。
附图说明
图1为本发明性能评估装置所属终端设备的功能模块示意图;
图2为本发明性能评估方法一示例性实施例的流程示意图;
图3为本发明性能评估方法涉及性能测试平台整体架构的示意图;
图4为本发明性能评估方法另一示例性实施例的流程示意图;
图5为本发明性能评估方法涉及获取测试计划的示意图;
图6为本发明性能评估方法另一示例性实施例的流程示意图;
图7为本发明性能评估方法另一示例性实施例的流程示意图;
图8为本发明性能评估方法涉及搭建业务服务集群的示意图;
图9为本发明性能评估方法涉及识别性能测试请求的示意图;
图10为本发明性能评估方法涉及指标分析的流程示意图;
图11为本发明性能评估方法涉及展示模块的示意图;
图12为本发明性能评估方法涉及分析报表的示意图;
图13为本发明性能评估方法另一涉及分析报表的示意图;
图14为本发明性能评估方法涉及获取性能测试分库的流程示意图;
图15为本发明性能评估方法涉及性能测试分库的示意图;
图16为本发明性能评估方法涉及生成测试计划的流程示意图;
图17为本发明性能评估方法涉及生成测试计划的示意图;
图18为本发明性能评估方法涉及对测试计划进行管理的示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。发起定时测试任务;根据所述定时测试任务,通过调度模块获取测试计划;根据所述测试计划,通过计划执行引擎发送测试指令至测试发起集群;通过所述测试发起集群,发出性能测试请求。通过所述测试发起集群,将所述性能测试请求发送至路由应用集群;通过所述路由应用集群,对所述性能测试请求进行识别,获得识别结果;根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群;将预设的测试数据输入所述业务服务性能测试集群,获得测试结果。根据预设的分库系统架构,搭建业务服务性能测试集群。通过所述测试发起集群将所述测试结果发送至展示模块;通过所述展示模块对所述测试结果进行指标分析,获得测试报告。根据预设的分库系统,建立初始测试分库;将预设的测试数据库中的数据输入至所述初始测试分库,获得性能测试分库。收集应用日志;对所述应用日志进行解析,生成测试计划;将所述测试计划发送至存储服务器。从而解决了生产环境下性能测试评估无法常态化执行,实现了对性能容量的评估,提高了性能评估的效率。基于本发明方案,从现实中存在生产环境下性能评估无法常态化执行的问题出发,设计了一种性能评估方法,并在实际的性能评估中验证了本发明的性能评估方法的有效性,最后经过本发明方法进行性能评估的效率得到了明显提高。
本发明实施例涉及的技术术语:
Jmeter:JMeter是一个开源的Java框架,主要用于对软件进行性能测试。它可以模拟大量用户同时访问一个或多个服务器、网络或对象,以便测量它们的性能、负载、并发、响应时间等指标。JMeter可以用于测试各种类型的应用程序,包括Web应用程序、Web服务、FTP、数据库等,JMeter具有易于使用、可扩展、可定制等特点,是一款非常流行的性能测试工具。
ECS,是Elastic Compute Service的缩写,是一种云服务器产品,可以让用户租用云服务器来部署应用程序、搭建网站、存储数据等,ECS提供了灵活的计算能力和多种操作系统选择,用户可以根据自己的需求选择不同的实例规格、镜像、网络和安全设置等,从而满足不同的业务需求。
集群,集群是一种计算机系统的架构,是由多个计算机节点通过网络连接组成的一组计算机集合,这些计算机节点可以独立运行不同的应用程序,但是通过共享资源和协同工作来达到共同的目标,在集群中,节点之间可以相互通信和协调,从而实现高可用性、负载均衡、高性能、可扩展性等优势,集群通常应用于大型的数据处理、高性能计算、云计算等领域。
本发明实施例考虑到,相关技术在进行性能评估时,由于无法与业务场景进行隔离,影响到了正常业务的进行,且每次性能测试的准备的时间较长,开发人员难以快速获得性能容量结果,这种方式存在着性能评估效率低下,且评估结果不够准确的问题。
因此,基于本发明方案,从现实中存在生产环境下性能评估无法常态化执行的问题出发,设计了一种性能评估方法,并在实际的性能评估中验证了本发明的性能评估方法的有效性,最后经过本发明方法进行性能评估的效率得到了明显提高。
具体地,参照图1,图1为本发明性能评估装置所属终端设备的功能板块示意图。该性能评估装置可以独立于终端设备的、能够进行性能评估的装置,其可以通过硬件或者软件的形式承载于终端设备上。该终端设备可以为手机、平板电脑等具有数据处理功能的智能移动设备,还可以为具有数据处理功能的固定终端设备或服务器等。
在本实施例中,该性能评估装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有操作系统以及性能评估程序,性能评估装置可以通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。通过该性能评估程序进行性能评估,得到性能评估的结果等信息存储于该存储器130中;输出模块110可为显示屏等。通信模块140可以包括WI F I模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中存储器130中的性能评估程序被处理器执行时实现以下步骤:
通过预设的测试发起平台发起性能测试请求;
根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
对所述测试结果进行指标分析,获得测试报告。
进一步地,存储器130中的性能评估程序被处理器执行时还实现以下步骤:
发起定时测试任务;
根据所述定时测试任务,通过调度模块获取测试计划;
根据所述测试计划,通过计划执行引擎发送测试指令至测试发起集群;
通过所述测试发起集群,发出性能测试请求。
进一步地,存储器130中的性能评估程序被处理器执行时还实现以下步骤:
通过所述测试发起集群,将所述性能测试请求发送至路由应用集群;
通过所述路由应用集群,对所述性能测试请求进行识别,获得识别结果;
根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群;
将预设的测试数据输入所述业务服务性能测试集群,获得测试结果。
进一步地,存储器130中的性能评估程序被处理器执行时还实现以下步骤:
根据预设的分库系统架构,搭建业务服务性能测试集群。
进一步地,存储器130中的性能评估程序被处理器执行时还实现以下步骤:
通过所述测试发起集群将所述测试结果发送至展示模块;
通过所述展示模块对所述测试结果进行指标分析,获得测试报告。
进一步地,存储器130中的性能评估程序被处理器执行时还实现以下步骤:
根据预设的分库系统,建立初始测试分库;
将预设的测试数据库中的数据输入至所述初始测试分库,获得性能测试分库。
进一步地,存储器130中的性能评估程序被处理器执行时还实现以下步骤:
收集应用日志;
对所述应用日志进行解析,生成测试计划;
将所述测试计划发送至存储服务器。
本实施例通过上诉方案,具体通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。基于预设的业务服务性能测试集群进行性能测试,可以解决生产环境下性能测试评估无法常态化执行的问题。基于本发明方案,从现实中存在生产环境下性能评估无法常态化执行的问题出发,设计了一种性能评估方法,并在实际的性能评估中验证了本发明的性能评估方法的有效性,最后经过本发明方法进行性能评估的效率得到了明显提高。
基于上述终端设备架构但不限于上述框架,提出本发明方法实施例。
参照图2,图2为本发明性能评估方法一示例性实施例的流程示意图。所述性能评估方法包括:
步骤S01,通过预设的测试发起平台发起性能测试请求;
本实施例方法的执行主体可以是一种性能评估装置,也可以是一种性能评估终端设备或服务器,本实施例以性能评估装置进行举例,该性能评估装置可以集成在具有数据处理功能终端设备上。
为了实现系统性能容量评估,采取以下步骤实现:
首先,现有技术中对于系统性能容量评估由于环境差异等问题,导致测试结果与生产环境实际情况相差较大,且无法快速获得系统性能容量结果;
最后,通过测试发起平台发起性能测试请求,其中,通过测试发起平台,可以将应用日志生成测试计划,并将测试计划发送至ECS,用于存储测试计划以及将测试计划发送至测试执行引擎,便于后续的性能测试。
步骤S02,根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
在获取到测试计划后,为了实现性能评估,采用以下步骤实现:
首先,将测试发起平台发送的测试请求通过测试发起集群发送至路由应用集群,其中,路由应用集群是用于识别业务请求的,当收到测试请求时,则启动测试集群进行性能测试;
然后,通过路由应用集群将测试请求发送到业务服务性能测试集群;
最后,将测试数据库中的数据,输入到性能测试集群中,进行性能测试,得到性能测试结果,其中,测试的数据库是跟业务数据库分离开的,不会影响正常业务的进行。
步骤S03,对所述测试结果进行指标分析,获得测试报告。
为了获取到当前系统真实的性能状态,采取以下步骤实现:
首先,将获取到的结果,发送到展示模块中,其中,展示模块针对测试结果可以进行指标分析,并将其进行可视化处理;
最后,将通过展示模块分析及处理后的测试结果生成测试报告,发送到用户。
具体地,如图3所示,图3为本发明性能评估方法涉及性能测试平台整体架构的示意图。
首先,根据收集应用实际进行时的生产日志;
然后,将收集到的生产日志输入到模拟请求解析器中,生成测试计划;
然后,将测试计划存储到ECS中,进行存储,其中,这里的测试计划可以根据用户进行调整,进行删除或保存的操作;
然后,用户通过配置管理,选取定时任务,通过定时调度管理模块进行调度,从ECS中提取测试计划至测试计划执行引擎;
然后,通过测试计划执行引擎发送至Jmeter集群;
然后,Jmeter将测试请求发送至业务路由集群,经过业务路由集群进行识别;
然后,通过业务服务性能测试集群进行性能测试,通过Jmeter进行结果计算,获得测试结果;
然后,将测试结果发送至DB数据库中,DB数据库对其进行管理;
最后,通过展示模块进行指标分析以及报表生成,并将报表发送至用户。
本实施例通过上述方案,具体通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。实现了系统性能评估,解决了生产环境下性能测试评估无法常态化执行的问题,提高了性能评估的效率。
参照图4,图4为本发明性能评估方法另一示例性实施例的流程示意图。
基于上述图2所示的实施例,所述步骤S01,通过预设的测试发起平台发起性能测试请求的步骤包括:
步骤S011,发起定时测试任务;
步骤S015,根据所述定时测试任务,通过调度模块获取测试计划;
步骤S016,根据所述测试计划,通过计划执行引擎发送测试指令至测试发起集群;
步骤S017,通过所述测试发起集群,发出性能测试请求。
具体地,为了发送测试请求,采取以下步骤实现:
首先,通过用户发起定时测试任务,其中,发起的定时任务,可以根据用的选择进行更改,例如测试的时间以及测试计划的选择;
然后,根据定时测试任务,通过调度模块在ECS中提取出测试计划,其中,测试计划是通过实际的业务应用在操作时产生的日志得到的,可以使测试的结果更加符合业务需求;
然后,通过计划执行引擎发送测试指令至测试发起集群,其中,测试指令带有特别的标识,通过后续的业务路由集群可以将其识别出来,不会对现有的业务造成影响;
最后,通过测试发起集群,将性能测试请求发送至业务路由集群,完成测试请求的发起。
如图5所示,图5为本发明性能评估方法涉及获取测试计划的示意图。
首先,根据用户设置的定时任务,使用定时调度管理;
然后,通过定时调度管理,将测试计划从ECS中提取出来发送至测试计划执行引擎;
最后,通过测试计划执行引擎将测试指令发送至测试发起集群。
本实施例通过上述方案,具体通过发起定时测试任务;根据所述定时测试任务,通过调度模块获取测试计划;根据所述测试计划,通过计划执行引擎发送测试指令至测试发起集群;实现了测试计划的发起,根据应用日志得到的测试计划,解决了测试结果由于环境差异等问题可能与生产环境实际情况相差较大的问题,提高了性能评估的准确性。
参照图6,图6为本发明性能评估方法另一示例性实施例的流程示意图。
基于上述图2所示的实施例,所述步骤S02,根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果的步骤包括:
步骤S021,通过所述测试发起集群,将所述性能测试请求发送至路由应用集群;
步骤S022,通过所述路由应用集群,对所述性能测试请求进行识别,获得识别结果;
步骤S024,根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群;
步骤S027,将预设的测试数据输入所述业务服务性能测试集群,获得测试结果。
具体地,为了获得测试结果,通过以下步骤实现:
首先,通过测试发起集群,将性能测试请求发送到路由应用集群,其中,性能测试请求带有特殊的标识,根据标识即可得到当前请求为性能测试,可以起到隔离业务系统的作用;
然后,根据所述路由应用集群,对所述性能测试请求进行识别,得到识别结果,其中,性能测试请求带有专门的标识信息,路由网关识别到性能测试请求,在原分库路由基础上,可将请求分发至性能测试集群,并访问对应数据分库,做到业务应用实例的隔离,根据每个请求的Channel(通道)信息,可识别出性能测试请求,比如用渠道号PRFTST表示性能测试,利用系统提供的接口权限管控功能对该Channel的调用接口权限进行控制,保证不会因为案例错误扩大测试接口范围,具体参数信息如下表所示:
然后,根据识别结果,将性能测试请求发送到业务服务性能测试集群;
最后,通过储存在性能测试分库的数据进行性能测试,获得测试结果,其中,性能测试分库是与业务数据库分开的,不影响实际的业务系统操作。
本实施例通过上述方案,具体通过所述测试发起集群,将所述性能测试请求发送至路由应用集群;通过所述路由应用集群,对所述性能测试请求进行识别,获得识别结果;根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群;将预设的测试数据输入所述业务服务性能测试集群,获得测试结果。实现了测试结果的获取,解决了业务资源集群无法与性能测试资源隔离的问题,提高了性能评估的效率。
参照图7,图7为本发明性能评估方法另一示例性实施例的流程示意图。
基于上述图6所示的实施例,在本实施例中,在所述根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群的步骤之前,所述性能评估方法还包括:
步骤S023,根据预设的分库系统架构,搭建业务服务性能测试集群。
具体地,为了实现业务服务集群与性能测试集群的隔离,通过以下步骤实现:
首先,基于现有的分库系统架构,搭建业务服务集群,其中,业务服务集群单独使用一套业务实例,用于进行性能测试;
最后,使用搭建好的业务服务性能测试集群用于性能测试,其中,集群是一种计算机系统的架构,是由多个计算机节点通过网络连接组成的一组计算机集合,这些计算机节点可以独立运行不同的应用程序,但是通过共享资源和协同工作来达到共同的目标,在集群中,节点之间可以相互通信和协调,从而实现高可用性、负载均衡、高性能、可扩展性等优势。
具体地,如图8所示,图8为本发明性能评估方法涉及搭建业务服务集群的示意图。
首先,通过路由应用集群中的Vmware虚拟机以及Docker搭建业务服务集群,其中,灰度分库集群没有实际的流量连接,仅用于性能测试;
最后,如图9所示,根据路由应用集群,识别性能测试请求,再将性能测试请求发送至业务服务集群,实现性能测试。
本实施例通过上述方案,具体通过根据预设的分库系统架构,搭建业务服务性能测试集群,实现了业务服务集群与性能测试集群隔离的问题,解决了性能测试对实际业务影响的问题,提高了性能评估的效率。
参照图10,图10为本发明性能评估方法涉及指标分析的流程示意图。
基于上述图2所示的实施例,所述步骤S03,对所述测试结果进行指标分析,获得测试报告的步骤包括:
步骤S031,通过所述测试发起集群将所述测试结果发送至展示模块;
步骤S032,通过所述展示模块对所述测试结果进行指标分析,获得测试报告。
具体地,为了获取测试报告,采取以下步骤实现:
首先,将所述测试结果发送至展示模块,其中,测试结果是由JMeter集群,即测试发起集群计算得出,JMeter是一个开源的Java框架,主要用于对软件进行性能测试。它可以模拟大量用户同时访问一个或多个服务器、网络或对象,以便测量它们的性能、负载、并发、响应时间等指标,JMeter可以用于测试各种类型的应用程序,包括Web应用程序、Web服务、FTP、数据库等,JMeter master将测压脚本发送至Jmeter slave上进行测压,Jmeter slave将测试数据回传给JMeter master,再由JMeter master汇总输出报告和配置详情,得到测试结果。
最后,通过展示模块对测试结果进行指标分析,得到测试报告,其中,展示模块将测试得到的并发量、成功量、失败量、吞吐量、CPU使用率以及内存使用率等进行图表绘制、可视化展示,生成查询页面、邮件报告以及文档报告。
更具体地,如图11所示,图11为本发明性能评估方法涉及展示模块的示意图。
为了实现对测试结果的处理与展示,使用展示模块对并发量、成功量、失败量、吞吐量、CPU使用率以及内存使用率等指标进行分析,如图12以及图13所示,得到分析结果,并生成查询页面、邮件报告以及文档报告。
本实施例通过上述方案,具体通过所述测试发起集群将所述测试结果发送至展示模块;通过所述展示模块对所述测试结果进行指标分析,获得测试报告。实现了测试结果的获取,解决了性能测试结果无法快速获取以及没有具体指标分析的问题,提高了性能评估的效率。
参照图14,图14为本发明性能评估方法涉及获取性能测试分库的流程示意图。
基于上述图6所示的实施例,在本实施例中,在所述将预设的测试数据输入所述业务服务性能测试集群,获得测试结果的步骤之前,所述性能评估方法还包括:
步骤S025,根据预设的分库系统,建立初始测试分库;
步骤S026,将预设的测试数据库中的数据输入至所述初始测试分库,获得性能测试分库。
具体地,为了使性能测试数据与业务数据区分开,采用以下步骤实现:
首先,根据预设的分库系统,建立初始测试分库,其中,测试分库是单独用于性能测试的,在初始测试分库中,还没有数据;
最后,将预设的测试数据库中的数据输入到初始测试分库中,生成性能测试分库,其中,性能测试分库中的数据包括但不限于连接真实的分库去获取测试数据,还可以是单独设置的测试数据库,单独设置的数据库可从真实业务数据库中同步数据。
更具体地,如图15所示,图15为本发明性能评估方法涉及性能测试分库的示意图。
首先,使用分库系统建立一个初始测试分库,使用初始测试分库连接一个真实业务数据库,还可以连接一个单独的测试数据库,单独的测试数据库从真实业务数据库中同步数据,其中,这里的方式应当根据用户的实际操作进行更改;
然后,构建完性能测试分库后,在接收到性能测试请求后,通过业务服务性能集群接收性能测试请求;
最后,业务服务性能集群通过测试性能分库中的数据进行性能测试,保证了测试结果的准确性,又能使性能测试与真实业务系统分开。
本实施例通过上述方案,具体通过根据预设的分库系统,建立初始测试分库;将预设的测试数据库中的数据输入至所述初始测试分库,获得性能测试分库。实现了性能测试与真实业务的隔离,解决了生产环境下性能测试评估无法常态化执行的问题,提高了性能评估的效率。
参照图16,图16为本发明性能评估方法涉及生成测试计划的流程示意图。
基于上述图4所示的实施例,在本实施例中,在所述根据所述定时测试任务,通过调度模块获取测试计划的步骤之前,所述性能评估方法还包括:
步骤S012,收集应用日志;
步骤S013,对所述应用日志进行解析,生成测试计划;
步骤S014,将所述测试计划发送至存储服务器。
具体地,为了使性能评估能够常态化进行,采取以下步骤实现:
首先,收集应用日志,其中,应用日志为业务应用在实际进行时产生的,收集真实业务应用的日志,有利于提高测试计划的准确性以及效率的提高;
然后,使用请求解析器将应用日志进行解析,生成测试计划;
最后,将生成的测试计划发送到ECS中进行存储,其中,ECS是一种云服务器产品,可以让用户租用云服务器来部署应用程序、搭建网站、存储数据等,ECS提供了灵活的计算能力和多种操作系统选择,用户可以根据自己的需求选择不同的实例规格、镜像、网络和安全设置等,从而满足不同的业务需求。
更具体地,如图17所示,图17为本发明性能评估方法涉及生成测试计划的示意图,请求报文从应用打印日志或数据库存储日志中收集获取,收集日志请求通过请求解析器,生成测试计划,在此过程中,能够通过人工进行参数设置、调整,最后将测试计划文件存储到ECS。
进一步地,如图18所示,图18为本发明性能评估方法涉及对测试计划进行管理的示意图,当测试计划生成后,可以通过用户自行上传或者其他程序录入的方式,将测试计划发送至ECS中,通过ECS对测试计划进行管理,包括但不限于测试计划的存储以及查询测试计划。
本实施例通过上述方案,具体通过收集应用日志;对所述应用日志进行解析,生成测试计划;将所述测试计划发送至存储服务器。实现了测试计划的生成,解决了性能评估无法常态化执行的问题,提高了性能评估的效率。
此外,本发明实施例还提出一种性能评估装置,所述性能评估装置包括:
发起模块,用于通过预设的测试发起平台发起性能测试请求;
测试模块,用于根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
指标分析模块,用于对所述测试结果进行指标分析,获得测试报告。
此外,本发明实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的性能评估程序,所述性能评估程序被所述处理器执行时实现如上所述的性能评估方法的步骤。
由于本性能评估程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有性能评估程序,所述性能评估程序被处理器执行时实现如上所述的性能评估方法的步骤。
由于本性能评估程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本发明实施例提出的性能评估方法、装置、终端设备以及存储介质通过预设的测试发起平台发起性能测试请求;根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;对所述测试结果进行指标分析,获得测试报告。从而解决了生产环境下性能测试评估无法常态化执行,实现了对性能容量的评估,提高了性能评估的效率。基于本发明方案,从现实中存在生产环境下性能评估无法常态化执行的问题出发,设计了一种性能评估方法,并在实际的性能评估中验证了本发明的性能评估方法的有效性,最后经过本发明方法进行性能评估的效率得到了明显提高。
和现有的技术相比,本发明实施例方案具有以下优点:
1、基于现有系统参照灰度分库方案,建立测试集群,可在生产环境中与真实业务实例隔离测试,以独立性能测试集群而又与真实生产环境融合的方式提供可靠、安全的性能测试模式,极大降低对业务的影响;
2、搭建常态性能测试平台,平台自动收集测试案例回放测试,模拟真实请求场景,减少人工生成测试案例成本而又提供高质量测试案例场景。基于请求案例自动收集,独立测试请求发起引擎,新增业务应用也能够简单快速纳入性能容量评估。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本发明每个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种性能评估方法,其特征在于,所述性能评估方法包括以下步骤:
通过预设的测试发起平台发起性能测试请求;
根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
对所述测试结果进行指标分析,获得测试报告。
2.根据权利要求1所述的性能评估方法,其特征在于,所述通过预设的测试发起平台发起性能测试请求的步骤包括:
发起定时测试任务;
根据所述定时测试任务,通过调度模块获取测试计划;
根据所述测试计划,通过计划执行引擎发送测试指令至测试发起集群;
通过所述测试发起集群,发出性能测试请求。
3.根据权利要求2所述的性能评估方法,其特征在于,所述根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果的步骤包括:
通过所述测试发起集群,将所述性能测试请求发送至路由应用集群;
通过所述路由应用集群,对所述性能测试请求进行识别,获得识别结果;
根据所述识别结果,通过所述性能测试请求将所述测试计划发送至预设的业务服务性能测试集群;
将预设的测试数据输入所述业务服务性能测试集群,获得测试结果。
4.根据权利要求3所述的性能评估方法,其特征在于,所述根据所述识别结果,通过所述性能测试请求将所测试计划发送至预设的业务服务性能测试集群的步骤之前还包括:
根据预设的分库系统架构,搭建业务服务性能测试集群。
5.根据权利要求2所述的性能评估方法,其特征在于,所述对所述测试结果进行指标分析,获得测试报告的步骤包括:
通过所述测试发起集群将所述测试结果发送至展示模块;
通过所述展示模块对所述测试结果进行指标分析,获得测试报告。
6.根据权利要求3所述的性能评估方法,其特征在于,所述将预设的测试数据输入所述业务服务性能测试集群,获得测试结果的步骤之前还包括:
根据预设的分库系统,建立初始测试分库;
将预设的测试数据库中的数据输入至所述初始测试分库,获得性能测试分库。
7.根据权利要求2所述的性能评估方法,其特征在于,所述根据所述定时测试任务,通过调度模块获取测试计划的步骤之前还包括:
收集应用日志;
对所述应用日志进行解析,生成测试计划;
将所述测试计划发送至存储服务器。
8.一种性能评估装置,其特征在于,所述性能评估装置包括:
发起模块,用于通过预设的测试发起平台发起性能测试请求;
测试模块,用于根据所述性能测试请求,通过预设的业务服务性能测试集群对系统进行测试,获得测试结果;
指标分析模块,用于对所述测试结果进行指标分析,获得测试报告。
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的半导体缺陷识别程序,所述性能评估程序被所述处理器执行时实现如权利要求1-7中任一项所述的性能评估方法的步骤。
10.一种计算器可读存储介质,其特征在于,所述计算机可读存储介质上存储有性能评估程序,所述性能评估程序被处理器执行时实现如权利要求1-7中任一项所述的性能评估方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310745711.0A CN116756020A (zh) | 2023-06-21 | 2023-06-21 | 性能评估方法、装置、终端设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310745711.0A CN116756020A (zh) | 2023-06-21 | 2023-06-21 | 性能评估方法、装置、终端设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116756020A true CN116756020A (zh) | 2023-09-15 |
Family
ID=87956776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310745711.0A Pending CN116756020A (zh) | 2023-06-21 | 2023-06-21 | 性能评估方法、装置、终端设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116756020A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118964219A (zh) * | 2024-10-18 | 2024-11-15 | 恒丰银行股份有限公司 | 一种用于非功能测试的测试资源管理方法、设备及介质 |
-
2023
- 2023-06-21 CN CN202310745711.0A patent/CN116756020A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118964219A (zh) * | 2024-10-18 | 2024-11-15 | 恒丰银行股份有限公司 | 一种用于非功能测试的测试资源管理方法、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111200523B (zh) | 中台系统配置方法、装置、设备及存储介质 | |
CN109450743A (zh) | 物联网平台压力测试系统、方法、装置及服务器 | |
CN113704077A (zh) | 测试用例生成方法及装置 | |
CN103246606A (zh) | Esb平台的性能方法和系统 | |
CN107704369A (zh) | 一种操作日志的记录方法、电子设备、存储介质、系统 | |
CN116756020A (zh) | 性能评估方法、装置、终端设备以及存储介质 | |
CN115802398A (zh) | 干扰优化方法及装置、存储介质及电子设备 | |
CN113660687A (zh) | 网络差小区处理方法、装置、设备及存储介质 | |
CN111522625B (zh) | 一种云端数据在线取证系统及方法 | |
CN112990483A (zh) | 一种基于概率性抽样的大规模边缘机器学习训练方法 | |
Santi et al. | Automated and reproducible application traces generation for IoT applications | |
CN108009086A (zh) | 基于用例分解和功能学习的系统自动化测试方法 | |
CN117294716A (zh) | 业务部署位置推荐方法、系统、电子设备和可读存储介质 | |
Khichane et al. | 5GC-Analyser: Demistifying the 5G Core Network Through Statistical Analysis | |
CN110650063A (zh) | 一种集中式的银行第三方软件仿真系统及方法 | |
CN113032089B (zh) | 一种基于api网关的分布式仿真服务构建方法 | |
CN116743553A (zh) | 一种镜像测试方法及装置 | |
Komosny et al. | Testing Internet applications and services using PlanetLab | |
CN110661677B (zh) | 一种dns测试方法、装置和系统 | |
CN113868116A (zh) | 测试依赖数据的生成方法、装置、服务器及存储介质 | |
CN112953793A (zh) | 一种工业网关测试系统及方法 | |
CN114721969A (zh) | 接口自动化测试数据和测试代码分离的方法及装置 | |
CN112488491A (zh) | 基于Petri网列控车载设备接入过程可靠性评估方法 | |
CN111221687B (zh) | 一种云存储测试系统和方法 | |
CN109656830B (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 |