CN111324545B - 应用服务器中间件性能测试方法、测试终端、应用服务器 - Google Patents
应用服务器中间件性能测试方法、测试终端、应用服务器 Download PDFInfo
- Publication number
- CN111324545B CN111324545B CN202010173736.4A CN202010173736A CN111324545B CN 111324545 B CN111324545 B CN 111324545B CN 202010173736 A CN202010173736 A CN 202010173736A CN 111324545 B CN111324545 B CN 111324545B
- Authority
- CN
- China
- Prior art keywords
- application server
- time
- test access
- access request
- test
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- 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—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种应用服务器中间件性能测试方法、测试终端、应用服务器,该方法包括:将测试访问请求发送至应用服务器并记录该测试访问请求的发送时间,以使该应用服务器根据该测试访问请求进行处理流程并记录处理过程的数据;接收该应用服务器反馈的处理结果并记录该结果的接收时间;获取该应用服务器记录的处理过程的数据;根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能,能将应用服务器中间件的处理过程拆分开,有针对性的提取单个组件或阶段的性能数据,在出现性能问题时,可以辅助快速定位中间件的性能瓶颈,提高问题分析效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用服务器中间件性能测试方法、测试终端、应用服务器。
背景技术
应用服务器中间件作为应用程序运行的容器,主要负责接收、解析网络请求,分派请求到指定的线程处理(应用代码处理),向数据库发送请求并接收反馈结果,接收线程处理结果并反馈到请求方等不同处理阶段的工作。不同的应用服务器中间件产品可能由于实现方式不同,在不同的处理阶段会展现出不同的性能,有的处理I/O处理性能好,有的连接数据库性能更佳。
随着云技术的不断发展,单个应用服务器已经由提供综合***转向提供特定专有服务,如提供I/O密集型服务、数据库密集型服务等,对应用服务器中间件的要求也要从整体性能好转为单个方面性能好,以能发挥出应用本身特点为优。
目前,行业内通用的应用服务器中间件测试方法只能测试出中间件产品的整体性能,测试结果为全链路的宏观性能表现,难以对应用服务器中间件中某个组件或某个处理阶段的性能情况进行评价,出现性能问题时难以快速定位中间件的性能瓶颈。
发明内容
针对现有技术中的问题,本发明提供一种应用服务器中间件性能测试方法、测试终端、应用服务器、电子设备以及计算机可读存储介质,能够至少部分地解决现有技术中存在的问题。
为了实现上述目的,本发明采用如下技术方案:
第一方面,提供一种应用服务器中间件性能测试方法,应用于测试终端,包括:
将测试访问请求发送至应用服务器并记录该测试访问请求的发送时间,以使该应用服务器根据该测试访问请求进行处理流程并记录处理过程的数据;
接收该应用服务器反馈的处理结果并记录该结果的接收时间;
获取该应用服务器记录的处理过程的数据;
根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能。
进一步地,该处理过程的数据包括:该应用服务器接收该测试访问请求的时间;
根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能,包括:
根据该测试访问请求的发送时间和该应用服务器接收该测试访问请求的时间得到该应用服务器的I/O性能。
进一步地,该根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能,包括:
根据该测试访问请求的发送时间和该结果的接收时间获取该应用服务器的静态资源处理性能。
进一步地,该处理过程的数据包括:该应用服务器依据该测试访问请求请求访问数据库的时间、该应用服务器收到该数据库返回结果的时间;
该根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能,包括:
根据该请求访问数据库的时间、该应用服务器收到该数据库返回结果的时间获取该应用服务器的数据库连接性能。
第二方面,提供一种测试终端,包括:
请求发送记录模块,将测试访问请求发送至应用服务器并记录该测试访问请求的发送时间,以使该应用服务器根据该测试访问请求进行处理流程并记录处理过程的数据;
反馈接收记录模块,接收该应用服务器反馈的处理结果并记录该结果的接收时间;
服务器数据获取模块,获取该应用服务器记录的处理过程的数据;
性能分析模块,根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能。
进一步地,该处理过程的数据包括:该应用服务器接收该测试访问请求的时间;
该性能分析模块包括:
I/O性能分析单元,根据该测试访问请求的发送时间和该应用服务器接收该测试访问请求的时间得到该应用服务器的I/O性能。
进一步地,该性能分析模块包括:
静态资源处理性能分析单元,根据该测试访问请求的发送时间和该结果的接收时间获取该应用服务器的静态资源处理性能。
进一步地,该处理过程的数据包括:该应用服务器依据该测试访问请求请求访问数据库的时间、该应用服务器收到该数据库返回结果的时间;
该性能分析模块包括:
数据库连接性能分析单元,根据该请求访问数据库的时间、该应用服务器收到该数据库返回结果的时间获取该应用服务器的数据库连接性能。
第三方面,提供一种应用服务器中间件性能测试方法,应用于应用服务器,该方法包括:
接收测试终端发送的测试访问请求并记录接收该测试访问请求的时间;
根据该测试访问请求判断是否需要访问数据库;
若是,向该数据库发送访问请求并记录请求访问数据库的时间;
获取该数据库返回的结果并记录该数据库返回结果的时间;
将该数据库返回的结果发送该测试终端并记录该结果的发送时间;
将接收该测试访问请求的时间、请求访问数据库的时间、数据库返回结果的时间以及该结果的发送时间作为处理过程的数据发送至该测试终端,以使该测试终端根据其自身记录的测试访问请求的发送时间和/或该结果的接收时间和/或该处理过程的数据进行性能分析。
第四方面,提供一种应用服务器,包括:
请求获取模块,接收测试终端发送的测试访问请求并记录接收该测试访问请求的时间;
访问判断模块,根据该测试访问请求判断是否需要访问数据库;
访问模块,若根据该测试访问请求判断需要访问数据库,向该数据库发送访问请求并记录请求访问数据库的时间;
结果接收模块,获取该数据库返回的结果并记录该数据库返回结果的时间;
结果发送模块,将该数据库返回的结果发送该测试终端并记录该结果的发送时间;
数据发送模块,将接收该测试访问请求的时间、请求访问数据库的时间、数据库返回结果的时间以及该结果的发送时间作为处理过程的数据发送至该测试终端,以使该测试终端根据其自身记录的测试访问请求的发送时间和/或该结果的接收时间和/或该处理过程的数据进行性能分析。
第五方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现上述的应用服务器中间件性能测试方法的步骤。
第六方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的应用服务器中间件性能测试方法的步骤。
本发明提供的应用服务器中间件性能测试方法、测试终端、应用服务器、电子设备以及计算机可读存储介质,该方法包括:将测试访问请求发送至应用服务器并记录该测试访问请求的发送时间,以使该应用服务器根据该测试访问请求进行处理流程并记录处理过程的数据;接收该应用服务器反馈的处理结果并记录该结果的接收时间;获取该应用服务器记录的处理过程的数据;根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能。其中,根据该测试访问请求的发送时间和/或该结果的接收时间和/或该应用服务器记录的处理过程的数据分析该应用服务器中间件性能,能将应用服务器中间件的处理过程拆分开,有针对性的提取单个组件或阶段的性能数据,帮助应用开发方和使用方评估应用服务器中间件的性能是否适合,在出现性能问题时,可以辅助快速定位中间件的性能瓶颈,提高问题分析效率。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为应用本发明实施例提供的应用服务器中间件性能测试方法的***架构图;
图2为本发明实施例提供的应用于测试终端的应用服务器中间件性能测试方法的流程图;
图3示出了本发明实施例提供的测试终端的结构图;
图4为应用本发明实施例提供的应用服务器中间件性能测试方法的另一种***架构图;
图5为本发明实施例提供的应用于应用服务器的应用服务器中间件性能测试方法的流程图;
图6示出了本发明实施例提供的应用服务器的结构图;
图7为本发明实施例电子设备的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为应用本发明实施例提供的应用服务器中间件性能测试方法的***架构图;如图1所示,该***架构包括测试终端100以及应用服务器104,应用服务器为物理服务器或虚拟机,其操作***上部署了应用服务器中间件,能够对外提供应用服务。
测试终端与应用服务器进行通信交互,以实现对所述应用服务器上部署的应用服务器中间件的性能测试。其中,应用服务器上设置有测试案例组件,用于处理测试终端的访问请求以及配合测试终端进行数据记录等。
值得说明的是,在利用测试终端对应用服务器中间件进行性能测试之前,还需要根据应用实用需求配置应用服务器中间件的参数。
图2为本发明实施例提供的应用于测试终端的应用服务器中间件性能测试方法的流程图;如图2所示,该应用服务器中间件性能测试方法应用于测试终端,具体包括以下内容:
步骤S100:将测试访问请求发送至应用服务器并记录所述测试访问请求的发送时间。
其中,所述应用服务器根据所述测试访问请求进行处理流程并记录处理过程的数据。
步骤S200:接收所述应用服务器反馈的处理结果并记录所述结果的接收时间;
其中,在应用服务器完成了与所述测试访问请求对应的处理流程后,会将处理结果反馈给智能终端。
步骤S300:获取所述应用服务器记录的处理过程的数据;
具体地,获取方式可以是所述应用服务器根据预设要求向所述测试终端发送,也可以是测试终端根据预设要求去采集应用服务器上的处理过程的数据。
步骤S400:根据所述测试访问请求的发送时间和/或所述结果的接收时间和/或所述应用服务器记录的处理过程的数据分析所述应用服务器中间件性能。
具体地,处理过程的数据可以包括:所述应用服务器接收所述测试访问请求的时间和/或所述处理过程的数据包括:所述应用服务器依据所述测试访问请求请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间。
本发明实施例提供的应用服务器中间件性能测试方法,将应用服务器中间件的各处理阶段的性能数据剥离开,有助于快速定位性能瓶颈,对中间件配置进行针对性的调优。精准评估中间件各处理阶段的性能表现,有助于在不同产品间进行针对性的比对,易于评价不同应用服务器中间件产品在不同方面的性能优劣。应用开发方或使用方在应用服务器中间件选型过程中,有了可靠的性能数据做参考,易于选出更适合自身应用需求的产品。
在一个可选的实施例中,该测试访问请求可以是并发的多个测试访问请求,以对应用服务器产生交易处理压力。
其中,在测试访问请求为多个或多种的情况下,为了区分各测试访问请求,为每个测试访问请求分配唯一的请求标签,在记录上述的各种时间时,同时记录对应的测试访问请求的请求标签,以便区分不同测试访问请求对应的数据,进一步提高测试精度。
值得说明的是,在进行性能分析之前,首先筛选出同一请求标签对应的数据,之后对数据进行性能分析。
在一个可选的实施例中,为了全面测试应用服务器中间件的不同性能,测试访问请求可以有多种,应用服务器上部署有不同的程序节点,以便处理不同的测试访问请求,因此,在记录上述的各种时间时,对应记录执行方法流程的节点编号,以便对不同的节点、不同请求进行分析处理,提高性能分析的稳定性和鲁棒性。
在一个可选的实施例中,该应用服务器中间件性能测试方法还可以包括:
生成所述测试访问请求。
其中,生成所述测试访问请求的过程可由控制指令触发,也可以根据预设的条件进行触发,该预设的条件可为预设时间间隔或预设事件发生。
在一个可选的实施例中,该步骤S400可以包括:
根据所述测试访问请求的发送时间和所述应用服务器接收所述测试访问请求的时间得到所述应用服务器的I/O性能。
和/或,根据所述测试访问请求的发送时间和所述结果的接收时间获取所述应用服务器的静态资源处理性能。
和/或,根据所述请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间获取所述应用服务器的数据库连接性能。
具体地,I/O性能是应用服务器中间件接收、解析网络请求到分派请求到测试案例程序的过程,体现应用服务器中间件的请求接收和调度能力,每个请求的处理时间T1=所述应用服务器接收所述测试访问请求的时间B-所述测试访问请求的发送时间A,计算所有请求的处理时间,便可计算得出最大处理时间、最小处理时间和平均处理时间。
具体地,静态资源处理是应用服务器中间件接收到静态资源请求,分配线程读取静态资源并返回给请求方的过程,每个请求的处理时间T2=所述结果的接收时间E-所述测试访问请求的发送时间A,计算所有请求的处理时间,便可计算得出最大处理时间、最小处理时间和平均处理时间。
具体地,数据库连接是测试案例程序从申请数据库连接、发送请求到接收到数据库返回的过程,每个请求的处理时间T3=所述应用服务器收到所述数据库返回结果的时间C2-所述请求访问数据库的时间C1,计算所有请求的处理时间,便可计算得出最大处理时间、最小处理时间和平均处理时间。
综上所述,本发明实施例提供的应用服务器中间件性能测试方法,可以通过测试应用服务器中间件的处理能力,得出应用服务器中间件在处理业务时不同处理阶段的性能表现情况,为选型应用服务器中间件和分析中间件性能瓶颈提供指导。具体通过不同测试组件配合将应用服务器中间件的处理过程拆分开,精准评估应用服务器中间件各个处理阶段的处理性能,经过对不同中间件测试数据的比对分析,帮助应用开发方或使用方根据应用自身的处理特点(如I/O密集型、数据密集型)来选择合适的中间件产品。
基于同一发明构思,本申请实施例还提供了一种测试终端,可以用于实现上述实施例所描述的方法,如下面的实施例所述。由于测试终端解决问题的原理与上述装置相似,因此测试终端的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3示出了本发明实施例提供的测试终端的结构图;如图3所示,该测试终端可以包括:请求发送记录模块10、反馈接收记录模块20、服务器数据获取模块30以及性能分析模块40。
请求发送记录模块10将测试访问请求发送至应用服务器并记录所述测试访问请求的发送时间,以使所述应用服务器根据所述测试访问请求进行处理流程并记录处理过程的数据;
反馈接收记录模块20接收所述应用服务器反馈的处理结果并记录所述结果的接收时间;
服务器数据获取模块30获取所述应用服务器记录的处理过程的数据;
性能分析模块40根据所述测试访问请求的发送时间和/或所述结果的接收时间和/或所述应用服务器记录的处理过程的数据分析所述应用服务器中间件性能。
本发明实施例提供的测试终端,将应用服务器中间件的各处理阶段的性能数据剥离开,有助于快速定位性能瓶颈,对中间件配置进行针对性的调优。精准评估中间件各处理阶段的性能表现,有助于在不同产品间进行针对性的比对,易于评价不同应用服务器中间件产品在不同方面的性能优劣。应用开发方或使用方在应用服务器中间件选型过程中,有了可靠的性能数据做参考,易于选出更适合自身应用需求的产品。
在一个可选的实施例中,该处理过程的数据包括:所述应用服务器接收所述测试访问请求的时间;所述性能分析模块包括:I/O性能分析单元,根据所述测试访问请求的发送时间和所述应用服务器接收所述测试访问请求的时间得到所述应用服务器的I/O性能。
在一个可选的实施例中,所述性能分析模块包括:静态资源处理性能分析单元,根据所述测试访问请求的发送时间和所述结果的接收时间获取所述应用服务器的静态资源处理性能。
在一个可选的实施例中,所述处理过程的数据包括:所述应用服务器依据所述测试访问请求请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间;所述性能分析模块包括:数据库连接性能分析单元,根据所述请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间获取所述应用服务器的数据库连接性能。
值得说明的是,该测试终端可以部署在同一个服务器上,如图1所示***架构,也可以将各个模块分别部署在不同的服务器上,实现测试功能,参见图4,该测试终端可以包括:压力生成组件101、102、103、数据采集组件105以及管理终端和计算单元106。
其中,压力生成组件可包括上述的请求发送记录模块以及上述的反馈接收记录模块;
数据采集组件包括上述的服务器数据获取模块,用于采集压力生成组件和应用服务器上的数据;
管理终端和计算单元用于控制压力生成组件启动和停止,并根据数据采集组件收集到的数据计算应用服务器中间件性能情况,该管理终端和计算单元包括上述的性能分析模块。
其中,压力生成组件、应用服务器、数据采集组件以及管理终端和计算单元可通过企业内部局域网进行通信。
本发明实施例还提供一种应用服务器中间件性能测试方法,应用于应用服务器,由部署在其上的测试案例组件执行,参见图5,该应用服务器中间件性能测试方法可以包括以下内容:
步骤S1000:接收测试终端发送的测试访问请求并记录接收所述测试访问请求的时间;
其中,为了后续处理时区分不同测试访问请求对应的数据,记录时间的同时记录测试访问请求的请求标签。
另外,应用服务器上可以布置不同的测试案例组件处理不同种类的测试访问请求,因此,在记录时间以及请求标签的同时,还需要记录测试案例组件的编号,或者成为程序处理节点编号。
步骤S2000:根据所述测试访问请求判断是否需要访问数据库;
若是,执行步骤S3000;若否,结束流程或者直接将处理访问请求的相关数据反馈给测试终端。
步骤S3000:向所述数据库发送访问请求并记录请求访问数据库的时间;
其中,在记录时间的同时,还需要记录请求标签以及程序处理节点编号,原理参见上述,在此不再赘述。
步骤S4000:获取所述数据库返回的结果并记录所述数据库返回结果的时间;
其中,在记录时间的同时,还需要记录请求标签以及程序处理节点编号,原理参见上述,在此不再赘述。
步骤S5000:将所述数据库返回的结果发送所述测试终端并记录所述结果的发送时间;
其中,在记录时间的同时,还需要记录请求标签以及程序处理节点编号,原理参见上述,在此不再赘述。
步骤S6000:将接收所述测试访问请求的时间、请求访问数据库的时间、数据库返回结果的时间以及所述结果的发送时间作为处理过程的数据发送至所述测试终端,以使所述测试终端根据其自身记录的测试访问请求的发送时间和/或所述结果的接收时间和/或所述处理过程的数据进行性能分析。
本领域技术人员可以理解的是,在发送上述时间的同时,发送时间对应的请求标签以及程序处理节点编号,以便测试终端分析某一测试访问请求的数据或者分析某一程序处理节点编号下的数据以便实现不同性能的测试。
综上所述,本发明实施例提供的应用服务器中间件性能测试方法,能够与测试终端配合,得出应用服务器中间件在处理业务时不同处理阶段的性能表现情况,为选型应用服务器中间件和分析中间件性能瓶颈提供指导。具体通过不同测试组件配合将应用服务器中间件的处理过程拆分开,精准评估应用服务器中间件各个处理阶段的处理性能,经过对不同中间件测试数据的比对分析,帮助应用开发方或使用方根据应用自身的处理特点(如I/O密集型、数据密集型)来选择合适的中间件产品。
基于同一发明构思,本申请实施例还提供了一种应用服务器,可以用于实现上述实施例所描述的方法,如下面的实施例所述。由于应用服务器解决问题的原理与上述装置相似,因此应用服务器的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6示出了本发明实施例提供的应用服务器的结构图;如图6所示,该应用服务器包括:
请求获取模块1接收测试终端发送的测试访问请求并记录接收所述测试访问请求的时间;
访问判断模块2根据所述测试访问请求判断是否需要访问数据库;
访问模块3若根据所述测试访问请求判断需要访问数据库,向所述数据库发送访问请求并记录请求访问数据库的时间;
结果接收模块4获取所述数据库返回的结果并记录所述数据库返回结果的时间;
结果发送模块5将所述数据库返回的结果发送所述测试终端并记录所述结果的发送时间;
数据发送模块6将接收所述测试访问请求的时间、请求访问数据库的时间、数据库返回结果的时间以及所述结果的发送时间作为处理过程的数据发送至所述测试终端,以使所述测试终端根据其自身记录的测试访问请求的发送时间和/或所述结果的接收时间和/或所述处理过程的数据进行性能分析。
另外,本领域技术人员可以理解的是,也可以是部署在应用服务器上的测试案例组件包括上述的模块。
综上所述,本发明实施例提供的应用服务器,能够与测试终端配合,得出应用服务器中间件在处理业务时不同处理阶段的性能表现情况,为选型应用服务器中间件和分析中间件性能瓶颈提供指导。具体通过不同测试组件配合将应用服务器中间件的处理过程拆分开,精准评估应用服务器中间件各个处理阶段的处理性能,经过对不同中间件测试数据的比对分析,帮助应用开发方或使用方根据应用自身的处理特点(如I/O密集型、数据密集型)来选择合适的中间件产品。
上述实施例阐明的装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为电子设备,具体的,电子设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
在一个典型的实例中电子设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的应用服务器中间件性能测试方法。
下面参考图7,其示出了适于用来实现本申请实施例的电子设备600的结构示意图。
如图7所示,电子设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有***600操作所需的各种程序和数据。CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行上述的应用服务器中间件性能测试方法。
在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (4)
1.一种应用服务器中间件性能测试方法,其特征在于,应用于测试终端,包括:
将测试访问请求发送至应用服务器并记录所述测试访问请求的发送时间,以使所述应用服务器根据所述测试访问请求进行处理流程并记录处理过程的数据;
接收所述应用服务器反馈的处理结果并记录所述结果的接收时间;
获取所述应用服务器记录的处理过程的数据;
根据所述测试访问请求的发送时间和/或所述结果的接收时间和/或所述应用服务器记录的处理过程的数据分析所述应用服务器中间件性能;
该测试访问请求是并发的多个测试访问请求,以对应用服务器产生交易处理压力;和/或测试访问请求有多种,应用服务器上部署有不同的程序节点,以便处理不同的测试访问请求;
在记录上述的各种时间时,对应记录执行方法流程的节点编号,以便对不同的节点、不同请求进行分析处理;
在测试访问请求为多个或多种的情况下,每个测试访问请求具有唯一的请求标签,在记录上述的各种时间时,同时记录对应的测试访问请求的请求标签,以便区分不同测试访问请求对应的数据;
所述处理过程的数据包括:所述应用服务器接收所述测试访问请求的时间、所述应用服务器依据所述测试访问请求请求访问数据库的时间、所述应用服务器收到数据库返回结果的时间;
根据所述测试访问请求的发送时间和/或所述结果的接收时间和/或所述应用服务器记录的处理过程的数据分析所述应用服务器中间件性能,包括:
根据所述测试访问请求的发送时间和所述应用服务器接收所述测试访问请求的时间得到所述应用服务器的I/O性能;和/或
根据所述测试访问请求的发送时间和所述结果的接收时间获取所述应用服务器的静态资源处理性能;和/或
根据所述请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间获取所述应用服务器的数据库连接性能。
2.一种测试终端,其特征在于,包括:
请求发送记录模块,将测试访问请求发送至应用服务器并记录所述测试访问请求的发送时间,以使所述应用服务器根据所述测试访问请求进行处理流程并记录处理过程的数据;
反馈接收记录模块,接收所述应用服务器反馈的处理结果并记录所述结果的接收时间;
服务器数据获取模块,获取所述应用服务器记录的处理过程的数据;
性能分析模块,根据所述测试访问请求的发送时间和/或所述结果的接收时间和/或所述应用服务器记录的处理过程的数据分析所述应用服务器中间件性能;
该测试访问请求是并发的多个测试访问请求,以对应用服务器产生交易处理压力;和/或测试访问请求有多种,应用服务器上部署有不同的程序节点,以便处理不同的测试访问请求;
在记录上述的各种时间时,对应记录执行方法流程的节点编号,以便对不同的节点、不同请求进行分析处理;
在测试访问请求为多个或多种的情况下,每个测试访问请求具有唯一的请求标签,在记录上述的各种时间时,同时记录对应的测试访问请求的请求标签,以便区分不同测试访问请求对应的数据;
所述处理过程的数据包括:所述应用服务器接收所述测试访问请求的时间、所述应用服务器依据所述测试访问请求请求访问数据库的时间、所述应用服务器收到数据库返回结果的时间;
所述性能分析模块包括:
I/O性能分析单元,根据所述测试访问请求的发送时间和所述应用服务器接收所述测试访问请求的时间得到所述应用服务器的I/O性能;和/或
静态资源处理性能分析单元,根据所述测试访问请求的发送时间和所述结果的接收时间获取所述应用服务器的静态资源处理性能;和/或
数据库连接性能分析单元,根据所述请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间获取所述应用服务器的数据库连接性能。
3.一种应用服务器中间件性能测试方法,其特征在于,应用于应用服务器,所述方法包括:
接收测试终端发送的测试访问请求并记录接收所述测试访问请求的时间;
根据所述测试访问请求判断是否需要访问数据库;
若是,向所述数据库发送访问请求并记录请求访问数据库的时间;
获取所述数据库返回的结果并记录所述数据库返回结果的时间;
将所述数据库返回的结果发送所述测试终端并记录所述结果的发送时间;
将接收所述测试访问请求的时间、请求访问数据库的时间、数据库返回结果的时间以及所述结果的发送时间作为处理过程的数据发送至所述测试终端,以使所述测试终端根据其自身记录的测试访问请求的发送时间和/或所述结果的接收时间和/或所述处理过程的数据进行性能分析;
该测试访问请求是并发的多个测试访问请求,以对应用服务器产生交易处理压力;和/或测试访问请求有多种,应用服务器上部署有不同的程序节点,以便处理不同的测试访问请求;
在记录上述的各种时间时,对应记录执行方法流程的节点编号,以便对不同的节点、不同请求进行分析处理;
在测试访问请求为多个或多种的情况下,每个测试访问请求具有唯一的请求标签,在记录上述的各种时间时,同时记录对应的测试访问请求的请求标签,以便区分不同测试访问请求对应的数据;
所述测试终端根据其自身记录的测试访问请求的发送时间和/或所述结果的接收时间和/或所述处理过程的数据进行性能分析包括:
根据所述测试访问请求的发送时间和所述应用服务器接收所述测试访问请求的时间得到所述应用服务器的I/O性能;和/或
根据所述测试访问请求的发送时间和所述结果的接收时间获取所述应用服务器的静态资源处理性能;和/或
根据所述请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间获取所述应用服务器的数据库连接性能。
4.一种应用服务器,其特征在于,包括:
请求获取模块,接收测试终端发送的测试访问请求并记录接收所述测试访问请求的时间;
访问判断模块,根据所述测试访问请求判断是否需要访问数据库;
访问模块,若根据所述测试访问请求判断需要访问数据库,向所述数据库发送访问请求并记录请求访问数据库的时间;
结果接收模块,获取所述数据库返回的结果并记录所述数据库返回结果的时间;
结果发送模块,将所述数据库返回的结果发送所述测试终端并记录所述结果的发送时间;
数据发送模块,将接收所述测试访问请求的时间、请求访问数据库的时间、数据库返回结果的时间以及所述结果的发送时间作为处理过程的数据发送至所述测试终端,以使所述测试终端根据其自身记录的测试访问请求的发送时间和/或所述结果的接收时间和/或所述处理过程的数据进行性能分析;
该测试访问请求是并发的多个测试访问请求,以对应用服务器产生交易处理压力;和/或测试访问请求有多种,应用服务器上部署有不同的程序节点,以便处理不同的测试访问请求;
在记录上述的各种时间时,对应记录执行方法流程的节点编号,以便对不同的节点、不同请求进行分析处理;
在测试访问请求为多个或多种的情况下,每个测试访问请求具有唯一的请求标签,在记录上述的各种时间时,同时记录对应的测试访问请求的请求标签,以便区分不同测试访问请求对应的数据;
所述测试终端根据其自身记录的测试访问请求的发送时间和/或所述结果的接收时间和/或所述处理过程的数据进行性能分析包括:
根据所述测试访问请求的发送时间和所述应用服务器接收所述测试访问请求的时间得到所述应用服务器的I/O性能;和/或
根据所述测试访问请求的发送时间和所述结果的接收时间获取所述应用服务器的静态资源处理性能;和/或
根据所述请求访问数据库的时间、所述应用服务器收到所述数据库返回结果的时间获取所述应用服务器的数据库连接性能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010173736.4A CN111324545B (zh) | 2020-03-13 | 2020-03-13 | 应用服务器中间件性能测试方法、测试终端、应用服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010173736.4A CN111324545B (zh) | 2020-03-13 | 2020-03-13 | 应用服务器中间件性能测试方法、测试终端、应用服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111324545A CN111324545A (zh) | 2020-06-23 |
CN111324545B true CN111324545B (zh) | 2023-09-22 |
Family
ID=71173209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010173736.4A Active CN111324545B (zh) | 2020-03-13 | 2020-03-13 | 应用服务器中间件性能测试方法、测试终端、应用服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111324545B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448857B (zh) * | 2022-01-29 | 2024-06-18 | 北京字节跳动网络技术有限公司 | Mock服务处理方法、装置、存储介质和*** |
CN116107913B (zh) * | 2023-04-06 | 2023-11-14 | 阿里云计算有限公司 | 单节点服务器的测试控制方法、装置及*** |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005071560A1 (en) * | 2004-01-17 | 2005-08-04 | Keebok Park | Method and system for application performance management |
CN102484653A (zh) * | 2009-08-31 | 2012-05-30 | 思科技术公司 | 客户端-服务器应用的测量属性 |
CN102938776A (zh) * | 2012-09-28 | 2013-02-20 | 方正国际软件有限公司 | 基于ajax技术的动态页面处理*** |
CN104202220A (zh) * | 2014-09-19 | 2014-12-10 | 北京国双科技有限公司 | 压力测试方法和装置 |
CN105138460A (zh) * | 2015-09-18 | 2015-12-09 | 北京恒华伟业科技股份有限公司 | 一种软件测试方法及*** |
CN105808441A (zh) * | 2016-03-31 | 2016-07-27 | 浪潮通用软件有限公司 | 一种多维度性能诊断分析方法 |
CN107395312A (zh) * | 2017-09-19 | 2017-11-24 | 电信科学技术第五研究所有限公司 | 一种安全网络时间同步方法及装置 |
WO2018035799A1 (zh) * | 2016-08-25 | 2018-03-01 | 阿里巴巴集团控股有限公司 | 数据查询方法、应用和数据库服务器、中间件及*** |
US10528512B1 (en) * | 2018-03-14 | 2020-01-07 | Parallels International Gmbh | Improving efficiency of asynchronous input/output operations based on observed performance |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120253745A1 (en) * | 2011-03-28 | 2012-10-04 | Infosys Technologies Limited | System and method for testing performance of mobile application server |
KR20130003544A (ko) * | 2011-06-30 | 2013-01-09 | 한국전자통신연구원 | 단말 장치들 사이의 콘텐츠 동기화 방법 및 시스템 |
-
2020
- 2020-03-13 CN CN202010173736.4A patent/CN111324545B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005071560A1 (en) * | 2004-01-17 | 2005-08-04 | Keebok Park | Method and system for application performance management |
CN102484653A (zh) * | 2009-08-31 | 2012-05-30 | 思科技术公司 | 客户端-服务器应用的测量属性 |
CN102938776A (zh) * | 2012-09-28 | 2013-02-20 | 方正国际软件有限公司 | 基于ajax技术的动态页面处理*** |
CN104202220A (zh) * | 2014-09-19 | 2014-12-10 | 北京国双科技有限公司 | 压力测试方法和装置 |
CN105138460A (zh) * | 2015-09-18 | 2015-12-09 | 北京恒华伟业科技股份有限公司 | 一种软件测试方法及*** |
CN105808441A (zh) * | 2016-03-31 | 2016-07-27 | 浪潮通用软件有限公司 | 一种多维度性能诊断分析方法 |
WO2018035799A1 (zh) * | 2016-08-25 | 2018-03-01 | 阿里巴巴集团控股有限公司 | 数据查询方法、应用和数据库服务器、中间件及*** |
CN107395312A (zh) * | 2017-09-19 | 2017-11-24 | 电信科学技术第五研究所有限公司 | 一种安全网络时间同步方法及装置 |
US10528512B1 (en) * | 2018-03-14 | 2020-01-07 | Parallels International Gmbh | Improving efficiency of asynchronous input/output operations based on observed performance |
Non-Patent Citations (2)
Title |
---|
***.《浙江省国土资源遥感调查与综合研究》.北京地质出版社,2004,第349-351页. * |
胡玫艳.《电子商务教程》.华南理工大学出版社,2003,第202-205页. * |
Also Published As
Publication number | Publication date |
---|---|
CN111324545A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8037458B2 (en) | Method and system for providing a common structure for trace data | |
CN107483221B (zh) | 一种跨应用问题排查方法、装置及*** | |
CN105630684B (zh) | 软件开发工具包识别方法和装置 | |
US20170123777A1 (en) | Deploying applications on application platforms | |
CN106843945B (zh) | 基于PaaS的GIS应用部署方法及*** | |
US20210326197A1 (en) | System And Method For Automatically Identifying And Resolving Computing Errors | |
CN111324545B (zh) | 应用服务器中间件性能测试方法、测试终端、应用服务器 | |
CN108959086B (zh) | 程序包测试部署方法、装置、***、电子设备及存储介质 | |
CN109951326B (zh) | 数据处理方法、装置、存储介质及处理器 | |
CN114115904A (zh) | 信息处理方法、装置、服务器及存储介质 | |
CN113946328A (zh) | 业务处理方法及***、存储介质和电子设备 | |
US20200310828A1 (en) | Method, function manager and arrangement for handling function calls | |
CN117539754A (zh) | 压力测试方法、装置、存储介质及电子设备 | |
CN114691445A (zh) | 集群故障处理方法、装置、电子设备及可读存储介质 | |
CN112527642A (zh) | 性能测试指标数据的显示方法、装置、设备及存储介质 | |
US9323509B2 (en) | Method and system for automated process distribution | |
CN116340159A (zh) | 回归测试用例推荐方法、***、设备及存储介质 | |
CN111367796B (zh) | 应用程序调试方法及装置 | |
CN111934932B (zh) | 一种互联网架构评价方法及装置 | |
CN112596974A (zh) | 一种全链路监控方法、装置、设备和存储介质 | |
US8549537B2 (en) | Middleware bridge system and method | |
CN113282631A (zh) | 一种基于用户画像数据确定目标用户的方法与设备 | |
CN116431160A (zh) | 精细化应用组处理方法和服务器 | |
CN118295919A (zh) | 应用程序的测试方法、装置、处理器及电子设备 | |
CN117130860A (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 |