CN109600280B - 压力测试系统、方法、装置及计算机可读存储介质 - Google Patents
压力测试系统、方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109600280B CN109600280B CN201811541378.7A CN201811541378A CN109600280B CN 109600280 B CN109600280 B CN 109600280B CN 201811541378 A CN201811541378 A CN 201811541378A CN 109600280 B CN109600280 B CN 109600280B
- Authority
- CN
- China
- Prior art keywords
- node
- service request
- log information
- test service
- target
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 472
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000005540 biological transmission Effects 0.000 claims abstract description 140
- 238000012544 monitoring process Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 26
- 230000004044 response Effects 0.000 claims description 26
- 238000009662 stress testing Methods 0.000 claims description 9
- 238000010998 test method Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000009530 blood pressure measurement Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
Images
Classifications
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- 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)
- Environmental & Geological Engineering (AREA)
- Testing Of Devices, Machine Parts, Or Other Structures Thereof (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开的实施例提供一种压力测试系统、方法、装置及计算机可读存储介质。该系统包括:被测组和压测机,被测组包括起始节点、终止节点和中间节点;压测机用于向起始节点输入目的节点为终止节点的测试服务请求;起始节点用于通过中间节点向终止节点传输测试服务请求,被测组中的每个节点用于向接收到的测试服务请求中插入本节点对应的传输日志信息;压测机还用于获得目标日志信息,并根据目标日志信息,输出针对被测组的压力测试结果;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
Description
技术领域
本公开的实施例涉及通信技术领域,尤其涉及一种压力测试系统、方法、装置及计算机可读存储介质。
背景技术
随着互联网企业的竞争愈发激烈,用户对服务请求的响应速度的要求越来越高;其中,服务请求可以为应用程序编程接口(Application Programming Interface,API)请求。
为了尽量满足用户的要求,目前一般会针对服务请求的传输过程及传输相关设备进行压力测试,现有的压力测试方式通常是测试人员借助压测工具手工进行测试,测试方式具有一定的主观性,测试结果的准确度较低,测试效率也较低。
发明内容
第一方面,本公开的实施例提供一种压力测试系统,包括:被测组和压测机,所述被测组包括起始节点、终止节点和中间节点;其中,
所述压测机用于向所述起始节点输入目的节点为所述终止节点的测试服务请求;
所述起始节点用于通过所述中间节点向所述终止节点传输测试服务请求,并且,所述被测组中的每个节点用于向接收到的测试服务请求中插入本节点对应的传输日志信息;
所述压测机还用于获得目标日志信息,并根据所述目标日志信息,输出针对所述被测组的压力测试结果;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
在一些实施例中,所述被测组中的每个节点中均具有传输日志插件,所述被测组中的每个节点具体用于调用本节点的传输日志插件,向接收到的测试服务请求中插入本节点对应的传输日志信息。
在一些实施例中,所述压测机中具有压力测试插件,所述压测机具体用于调用所述压力测试插件,输出针对所述被测组的压力测试结果。
在一些实施例中,所述被测组中的每个节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和当前节点的节点标识。
在一些实施例中,所述中间节点的数量为M个,所述起始节点和M个所述中间节点中至少存在一个负载均衡节点,并且,通过M个所述中间节点,所述起始节点和所述终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数;
所述压侧机具体用于根据所述目标日志信息,输出所述N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项。
在一些实施例中,所述压测机具体用于根据所述目标日志信息,显示所述压力测试系统的链路监控视图;其中,在所述链路监控视图中,对应于所述被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,所述系统还包括日志收集节点;
所述终止节点用于在向接收到的测试服务请求中插入所述终止节点对应的传输日志信息后,向所述日志收集节点发送所述目标日志信息;
所述日志收集节点用于存储所述终止节点发送的所述目标日志信息;
所述压测机具体用于获得所述日志收集节点中存储的所述目标日志信息。
第二方面,本公开的实施例提供一种压力测试方法,应用于压力测试系统中的压测机,所述方法包括:
向所述系统中的被测组中的起始节点输入测试服务请求;其中,所述测试服务请求的目的节点为所述被测组中的终止节点;
获得目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
根据所述目标日志信息,输出针对所述被测组的压力测试结果。
在一些实施例中,所述压测机中具有压力测试插件;
所述输出针对所述被测组的压力测试结果,包括:
调用所述压力测试插件,输出针对所述被测组的压力测试结果。
在一些实施例中,所述终止节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和所述终止节点的节点标识。
在一些实施例中,所述根据所述目标日志信息,输出针对所述被测组的压力测试结果,包括:
根据所述目标日志信息,输出所述起始节点和所述终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
在一些实施例中,所述根据所述目标日志信息,输出所述起始节点和所述终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项,包括:
根据所述目标日志信息,显示所述压力测试系统的链路监控视图;其中,在所述链路监控视图中,对应于所述被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,所述获得目标日志信息,包括:
获得所述系统中的日志收集节点中存储的所述目标日志信息。
第三方面,本公开的实施例提供一种压力测试装置,应用于压力测试系统中的压测机,所述装置包括:
输入模块,用于向所述系统中的被测组中的起始节点输入测试服务请求;其中,所述测试服务请求的目的节点为所述被测组中的终止节点;
获得模块,用于获得目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
输出模块,用于根据所述目标日志信息,输出针对所述被测组的压力测试结果。
在一些实施例中,所述压测机中具有压力测试插件;
所述输出模块,具体用于:
调用所述压力测试插件,输出针对所述被测组的压力测试结果。
在一些实施例中,所述终止节点对应的传输日志信息中包括:测试服务请求的接收时间戳、测试服务请求的发送时间戳和所述终止节点的节点标识。
在一些实施例中,所述输出模块,具体用于:
根据所述目标日志信息,输出所述起始节点和所述终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
在一些实施例中,所述输出模块,具体用于:
根据所述目标日志信息,显示所述压力测试系统的链路监控视图;其中,在所述链路监控视图中,对应于所述被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,所述获得模块,具体用于:
获得所述系统中的日志收集节点中存储的所述目标日志信息。
第四方面,本公开的实施例提供一种压力测试方法,应用于压力测试系统的被测组中的目标节点,所述被测组包括起始节点、终止节点和中间节点,所述目标节点为所述起始节点、所述终止节点和所述中间节点中的任意节点;
所述方法包括:
接收来自所述系统中的压测机的测试服务请求;
向所述测试服务请求中插入所述目标节点对应的传输日志信息;
其中,所述起始节点接收的测试服务请求是由所述压测机输入的,所述起始节点通过所述中间节点向所述终止节点传输测试服务请求。
在一些实施例中,所述目标节点中具有传输日志插件;
所述向所述测试服务请求中插入所述目标节点对应的传输日志信息,包括:
调用所述传输日志插件,向所述测试服务请求中插入所述目标节点对应的传输日志信息。
在一些实施例中,所述目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和所述目标节点的节点标识。
在一些实施例中,所述中间节点的数量为M个,所述起始节点和M个所述中间节点中至少存在一个负载均衡节点,并且,通过M个所述中间节点,所述起始节点和所述终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数。
在一些实施例中,若所述目标节点为所述终止节点,所述向所述测试服务请求中插入所述目标节点对应的传输日志信息之后,所述方法还包括:
向所述系统中的日志收集节点发送目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
第五方面,本公开的实施例提供一种压力测试装置,应用于压力测试系统的被测组中的目标节点,所述被测组包括起始节点、终止节点和中间节点,所述目标节点为所述起始节点、所述终止节点和所述中间节点中的任意节点;
所述装置包括:
接收模块,用于接收来自所述系统中的压测机的测试服务请求;
插入模块,用于向所述测试服务请求中插入所述目标节点对应的传输日志信息;
其中,所述起始节点接收的测试服务请求是由所述压测机输入的,所述起始节点通过所述中间节点向所述终止节点传输测试服务请求。
在一些实施例中,所述目标节点中具有传输日志插件;
所述插入模块,具体用于:
调用所述传输日志插件,向所述测试服务请求中插入所述目标节点对应的传输日志信息。
在一些实施例中,所述目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和所述目标节点的节点标识。
在一些实施例中,所述中间节点的数量为M个,所述起始节点和M个所述中间节点中至少存在一个负载均衡节点,并且,通过M个所述中间节点,所述起始节点和所述终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数。
在一些实施例中,若所述目标节点为所述终止节点,所述装置还包括:
发送模块,用于在向所述测试服务请求中插入所述目标节点对应的传输日志信息之后,向所述系统中的日志收集节点发送目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
第六方面,本公开的实施例提供一种压测机,其特征在于,包括处理器,存储器,存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述第二方面提供的压力测试方法的步骤。
第七方面,本公开的实施例提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面提供的压力测试方法的步骤。
第八方面,本公开的实施例提供一种节点,包括处理器,存储器,存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述第四方面提供的压力测试方法的步骤。
第九方面,本公开的实施例提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第四方面提供的压力测试方法的步骤。
附图说明
图1是本公开的实施例提供的压力测试系统的结构示意图;
图2是本公开的实施例提供的一种压力测试方法的流程图;
图3是本公开的实施例提供的一种压力测试装置的结构框图;
图4是本公开的实施例提供的另一种压力测试方法的流程图;
图5是本公开的实施例提供的另一种压力测试装置的结构框图;
图6是本公开的实施例提供的再一种压力测试方法的流程图;
图7是本公开的实施例提供的压测机的结构示意图;
图8是本公开的实施例提供的节点的结构示意图。
具体实施方式
下面将结合本公开的实施例中的附图,对本公开的实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获取的所有其他实施例,都属于本公开保护的范围。
为了解决现有技术存在的问题,本公开的实施例提供了一种压力测试系统、方法、装置及计算机可读存储介质。
需要说明的是,本公开的实施例中涉及的压力测试具体为软件压力测试,软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单,其不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试,通常要进行软件压力测试的资源包括内部内存、中央处理器(Central Processing Unit,CPU)、磁盘空间和网络带。
可以理解的是,软件压力测试时有一个重要的性能指标,即TPS(全称为Transaction Per Second),其表示每秒钟系统能够处理的交易或事务的数量,其是LoadRunner(其是一种预测系统行为和性能的负载测试工具)中衡量系统处理能力的重要指标。
参见图1,图中示出了本公开的实施例提供的压力测试系统的结构示意图。如图1所示,压力测试系统包括:被测组1和压测机3,被测组1包括起始节点11、终止节点12和中间节点13。
具体地,起始节点11、终止节点12和中间节点13均可以为服务器,起始节点11、终止节点12和中间节点13的数量均可以为一个、两个或者两个以上,并且,起始节点11、终止节点12和中间节点13中的任意两者的数量可以相同或者不同。
压测机3用于向起始节点11输入目的节点为终止节点12的测试服务请求。
其中,测试服务请求可以为API请求,测试服务请求的数量可以为多个,例如成百上千个。
可以理解的是,API具有较强的灵活性、拓展性和跨平台性,以API的形式输出服务、能力、数据的情况非常普遍,一组API就能够支撑一个完整的服务或者功能。目前,云产品之间、应用程序之间,程序与数据之间,服务器与各种客户端之间都通过调用API进行交互。
起始节点11用于通过中间节点13向终止节点12传输测试服务请求,并且,被测组1中的每个节点用于向接收到的测试服务请求中插入本节点对应的传输日志信息。
可选地,被测组1中的每个节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和当前节点的节点标识。
其中,测试服务请求的输入时间戳和测试服务请求的输出时间戳可以称为监控时间戳,测试服务请求的输入时间戳用于表征测试服务请求的接收时间,测试服务请求的输出时间戳用于表征测试服务请求的发出时间。当前节点的节点标识包括但不限于当前节点的IP地址和设备序列号。
需要说明的是,传输日志信息中包括的信息类型并不局限于上述情况,只需保证传输日志信息能够有效地反映当前节点对测试服务请求的传输情况即可,本公开的实施例对传输日志信息中包括的信息类型不做任何限定。
压测机3还用于获得目标日志信息,并根据目标日志信息,输出针对被测组1的压力测试结果;其中,目标日志信息中包括插入有终止节点12对应的传输日志信息的测试服务请求中的所有传输日志信息。
具体地,压测机3可以以语音形式、文字形式、图像形式以及表格形式中的至少一种形式输出针对被测组1的压力测试结果。
本公开的实施例中,压测机3可以向被测组1中的起始节点11输入目的节点为终止节点12的测试服务请求,接下来,起始节点11通过中间节点13向终止节点12传输测试服务请求,并且,当测试服务请求经过被测组1中的任一节点时,该节点会向测试服务请求中插入本节点对应的传输日志信息。这样,随着测试服务请求经过的节点的数目的增加,测试服务请求中添加的传输日志信息的数目会逐渐增加。由于测试服务请求的目的节点为终止节点12,终止节点12为测试服务请求的最后一个传输节点,在终止节点12向测试服务请求中添加传输日志信息后,测试服务请求中将添加有其传输路径上的所有节点分别对应的传输日志信息,这些传输日志信息汇总后即可得到目标日志信息。在压侧机3获得目标日志信息之后,压测机3根据目标日志信息中的各日志信息即可对被测组1中的各节点以及被测组1中的链路进行分析,以得到并输出针对被测组1的压力测试结果,即实现对被测组1的压力测试。
可以看出,本公开的实施例中,只需通过压测机3向起始节点11下发测试服务请求,被测组1中的各节点即可自动向测试服务请求中添加相应的传输日志信息,压测机3根据被测组1中的各节点分别对应的传输日志信息构成的目标日志信息即可自动实现对测试组1的压力测试,且各节点分别对应的传输日志信息均为非常客观的数据,因此,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高测试结果的准确度和测试效率。
在一些实施例中,被测组1中的每个节点中均具有传输日志插件,被测组1中的每个节点具体用于调用本节点的传输日志插件,向接收到的测试服务请求中插入本节点对应的传输日志信息。
本公开的实施例中,只需在被测组1中的每个节点中添加传输日志插件,通过对自身的传输日志插件的调用,被测组1中的每个节点即可便捷地实现传输日志信息的插入,以便于压测机3基于目标日志信息进行压力测试。可见,本公开的实施例能够以较低的成本实现压力测试。
当然,开发人员也可以专门设计一种用于作为被测组1中的节点的服务器,该服务器的组成模块中可以包括专门的,用于插入传输日志信息的功能模块,这也是可行的。
在一些实施例中,压测机3中具有压力测试插件,压测机3具体用于调用压力测试插件,输出针对被测组1的压力测试结果。
其中,压力测试插件也可以称为链路监控插件,链路监控插件具体可以为JMeter链路监控插件,JMeter链路监控插件可以放置在压测机3的扩展目录(例如lib\ext扩展目录)下。
可以理解的是,JMeter是Apache组织开发的基于Java(其为一门面向对象编程语言)的压力测试工具,其用于对软件做压力测试,它最初被设计用于网页(Web)应用测试,但后来扩展到其他测试领域。一般而言,JMeter可以用于测试静态和动态资源,例如静态文件、Java小服务程序、通用网关接口(Common Gateway Interface,CGI)脚本、Java对象、数据库、文件传输协议(即FTP)服务器等等。JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证程序返回了期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。
本公开的实施例中,只需在压测机3中添加压力测试插件,通过对压力测试插件的调用,压测机3即可便捷地输出压力测试结果,以便于实现压力测试。可见,本公开的实施例能够以较低的成本实现压力测试。
当然,开发人员也可以专门设计一种用于作为压测机3的设备,该设备的组成模块中可以包括专门的,用于输出压力测试结果的功能模块,这也是可行的。
在一些实施例中,中间节点13的数量为M个,起始节点11和M个中间节点13中至少存在一个负载均衡节点,并且,通过M个中间节点13,起始节点11和终止节点12之间形成有N条链路;其中,M和N均为大于或等于2的整数。
压侧机3具体用于根据目标日志信息,输出N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组1中的每个节点传输测试服务请求的平均耗时中的至少一项。
其中,M和N均可以为3、4、5、6或者其他整数,M和N的取值可以相同或者不同。
下面结合图1,以一个具体的例子对本公开的实施例的具体实施过程进行说明。
如图1所示,起始节点11的数量可以为1、终止节点12的数量可以为2,中间节点13的数量M可以为4,起始节点11和终止节点12之间形成的链路的数量N可以为2。具体地,1个起始节点11可以为Q(其可以为能够进行负载均衡的负载均衡节点),4个中间节点13可以分别为J1(其可以为Nginx服务器)、J2(其可以为Nginx服务器)、J3和J4,2个终止节点12可以为Z1和Z2,起始节点11和终止节点12之间形成的2条链路分别为Q-J1-J2-Z1(后续将其简称为L1)和Q-J3-J4-Z2(后续将其简称为L2)。
假设压测机3向Q输入了X条测试服务请求,其中,X1条通过L1进行传输,X2条通过L2进行传输,那么,L1承担测试服务请求的百分比为X1/X,L2承担测试服务请求的百分比为X2/X。
需要说明的是,针对经过任一链路(例如L1)的任一测试服务请求,通过将Z1对应的输出时间戳与Q对应的输入时间戳相减即可得到L1对该测试服务请求的响应时间。假设通过L1进行传输的X1条测试请求中,第一条测试请求的响应时间为t1、第二条测试请求的响应时间为t2,……,第X1条测试请求的响应时间为tX1,那么,L1的平均响应时间为t1、t2,……,tX1的平均值。L2的平均响应时间的计算过程参照对L1的说明即可,在此不再赘述。
另外,X条测试服务请求中的每条测试服务请求均会经过Q,那么,针对任一测试服务请求经过Q时,Q所生成的传输日志信息,通过将该传输日志信息中的输出时间戳与输入时间戳相减即可得出该节点传输测试服务请求的耗时。通过这种方式,总共可以得到X个耗时,Q传输测试服务请求的平均耗时为这X个耗时的平均值。其他节点传输测试服务请求的平均耗时的计算过程参照对Q的说明即可,在此不再赘述。
在一些实施例中,测试组1中的每个节点均可以预先设置有对应的服务时间阈值;其中,Q对应的服务时间阈值可以为2毫秒,J1和J3对应的服务时间阈值可以为2毫秒,J2和J4对应的服务时间阈值可以为120毫秒,Z1和Z2对应的服务时间阈值可以为30毫秒。在得到测试组1中的每个节点传输测试服务请求的平均耗时,可以将各平均耗时分别与相应的服务时间阈值进行比较,以得到比较结果,压测机3可以输出这些比较结果。
本公开的实施例中,压侧机3通过压力测试得到的压测结果中包括N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组1中的每个节点传输测试服务请求的平均耗时等,这些压测结果能够帮助测试、开发、运维人员快速定位出压测过程中性能最优的链路,以及容易出现响应时间超时的链路,从而给开发、运维人员对应用服务的优化提供数据支撑。
在一些实施例中,压测机3具体用于根据目标日志信息,显示压力测试系统的链路监控视图;其中,在链路监控视图中,对应于被测组中的每个节点显示有其传输测试服务请求的平均耗时。
需要说明的是,压力测试插件可以预先添加有链路监控视图,链路监控视图能够展示压力测试系统的整体构架,例如展示图1中所示的构架。
本公开的实施例中,通过在链路监控视图中对各节点对应的平均耗时进行显示,能够方便测试、开发、运维人员快速直观地获知各节点的传输性能。
在一些实施例中,如图1所示,压力测试系统还包括日志收集节点5;
终止节点12用于在向接收到的测试服务请求中插入终止节点12对应的传输日志信息后,向日志收集节点5发送目标日志信息;
日志收集节点5用于存储终止节点12发送的目标日志信息;
压测机3具体用于获得日志收集节点5中存储的目标日志信息。
其中,日志服务节点5也可以为一服务器。
本实施例中,终止节点12中可以配置有日志收集节点5的IP地址、端口和上报时间间隔(默认为1秒)。终止节点12可以每隔1秒,向日志收集节点5发送目标日志信息,日志收集节点5可以存储来自终止节点12的目标日志信息。
对于压侧机3而言,其可以在lib\ext扩展目录下配置日志收集节点5的IP地址、端口和刷新频率(默认为1秒)。压侧机3可以每隔1秒,向日志收集节点5发送日志信息获取请求,以获得日志收集节点5中存储的目标日志信息,从而便于据此进行压力测试。
本公开的实施例中,通过单独部署提供日志收集服务的日志收集节点5,能够保证压侧机3对目标日志信息的获取,以便于实现压力测试,还能够避免日志信息对终止节点12的存储空间占用过多而带来不利的影响。
综上,本公开的实施例中,通过使用传输日志插件和压力测试插件这两个插件,以及日志收集服务这一个服务,能够自动分析测试服务请求从用户端到服务器端所经过的链路,以及各链路上的时间消耗等,这样能够可靠地实现针对测试组1的压力测试,提高测试结果的准确度和测试效率。
参见图2,图中示出了本公开的实施例提供的压力测试方法的流程图。如图2所示,该方法应用于压力测试系统中的压测机,该方法包括如下步骤:
步骤201,向压力测试系统中的被测组中的起始节点输入测试服务请求;其中,测试服务请求的目的节点为被测组中的终止节点;
步骤202,获得目标日志信息;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
步骤203,根据目标日志信息,输出针对被测组的压力测试结果。
在一些实施例中,压测机中具有压力测试插件;
输出针对被测组的压力测试结果,包括:
调用压力测试插件,输出针对被测组的压力测试结果。
在一些实施例中,终止节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和终止节点的节点标识。
在一些实施例中,根据目标日志信息,输出针对被测组的压力测试结果,包括:
根据目标日志信息,输出起始节点和终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
在一些实施例中,根据目标日志信息,输出起始节点和终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项,包括:
根据目标日志信息,显示压力测试系统的链路监控视图;其中,在链路监控视图中,对应于被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,获得目标日志信息,包括:
获得压力测试系统中的日志收集节点中存储的目标日志信息。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
参见图3,图中示出了本公开的实施例提供的压力测试装置300的结构框图。如图3所示,压力测试装置300应用于压力测试系统中的压测机,压力测试装置300包括:
输入模块301,用于向压力测试系统中的被测组中的起始节点输入测试服务请求;其中,测试服务请求的目的节点为被测组中的终止节点;
获得模块302,用于获得目标日志信息;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
输出模块303,用于根据目标日志信息,输出针对被测组的压力测试结果。
在一些实施例中,压测机中具有压力测试插件;
输出模块,具体用于:
调用压力测试插件,输出针对被测组的压力测试结果。
在一些实施例中,终止节点对应的传输日志信息中包括:测试服务请求的接收时间戳、测试服务请求的发送时间戳和终止节点的节点标识。
在一些实施例中,输出模块,具体用于:
根据目标日志信息,输出起始节点和终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
在一些实施例中,输出模块,具体用于:
根据目标日志信息,显示压力测试系统的链路监控视图;其中,在链路监控视图中,对应于被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,获得模块,具体用于:
获得压力测试系统中的日志收集节点中存储的目标日志信息。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
参见图4,图中示出了本公开的实施例提供的压力测试方法的流程图。如图4所示,该方法应用于压力测试系统的被测组中的目标节点,被测组包括起始节点、终止节点和中间节点,目标节点为起始节点、终止节点和中间节点中的任意节点;
该方法包括如下步骤:
步骤401,接收来自压力测试系统中的压测机的测试服务请求;
步骤402,向测试服务请求中插入目标节点对应的传输日志信息;
其中,起始节点接收的测试服务请求是由压测机输入的,起始节点通过中间节点向终止节点传输测试服务请求。
在一些实施例中,目标节点中具有传输日志插件;
向测试服务请求中插入目标节点对应的传输日志信息,包括:
调用传输日志插件,向测试服务请求中插入目标节点对应的传输日志信息。
在一些实施例中,目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和目标节点的节点标识。
在一些实施例中,中间节点的数量为M个,起始节点和M个中间节点中至少存在一个负载均衡节点,并且,通过M个中间节点,起始节点和终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数。
在一些实施例中,若目标节点为终止节点,向测试服务请求中插入目标节点对应的传输日志信息之后,该方法还包括:
向压力测试系统中的日志收集节点发送目标日志信息;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
参见图5,图中出了本公开的实施例提供的压力测试装置500的结构框图。如图5所示,压力测试装置500应用于压力测试系统的被测组中的目标节点,被测组包括起始节点、终止节点和中间节点,目标节点为起始节点、终止节点和中间节点中的任意节点;
压力测试装置500包括:
接收模块501,用于接收来自压力测试系统中的压测机的测试服务请求;
插入模块502,用于向测试服务请求中插入目标节点对应的传输日志信息。
在一些实施例中,目标节点中具有传输日志插件;
插入模块,具体用于:
调用传输日志插件,向测试服务请求中插入目标节点对应的传输日志信息。
在一些实施例中,目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和目标节点的节点标识。
在一些实施例中,中间节点的数量为M个,起始节点和M个中间节点中至少存在一个负载均衡节点,并且,通过M个中间节点,起始节点和终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数。
在一些实施例中,若目标节点为终止节点,压力测试装置500还包括:
发送模块,用于在向测试服务请求中插入目标节点对应的传输日志信息之后,向压力测试系统中的日志收集节点发送目标日志信息;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
参见图6,图中示出了本公开的实施例提供的压力测试方法的流程图。如图6所示,该方法应用于压力测试系统,该系统包括:被测组和压测机,被测组包括起始节点、终止节点和中间节点;
该方法包括如下步骤:
步骤601,压测机向起始节点输入目的节点为终止节点的测试服务请求;
步骤602,起始节点通过中间节点向终止节点传输测试服务请求;
步骤603,被测组中的每个节点在接收到测试服务请求时,向接收到的测试服务请求中插入本节点对应的传输日志信息;
步骤604,压测机获得目标日志信息,并根据目标日志信息,输出针对被测组的压力测试结果;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
在一些实施例中,被测组中的每个节点中具有传输日志插件;
向接收到的测试服务请求中插入本节点对应的传输日志信息,包括:
调用本节点的传输日志插件,向接收到的测试服务请求中插入本节点对应的传输日志信息。
在一些实施例中,压测机中具有压力测试插件;
输出针对被测组的压力测试结果,包括:
调用压力测试插件,输出针对被测组的压力测试结果。
在一些实施例中,被测组中的每个节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和当前节点的节点标识。
在一些实施例中,中间节点的数量为M个,起始节点和M个中间节点中至少存在一个负载均衡节点,并且,通过M个中间节点,起始节点和终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数;
根据目标日志信息,输出针对被测组的压力测试结果,包括:
根据目标日志信息,输出N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项。
在一些实施例中,根据目标日志信息,输出N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项,包括:
根据目标日志信息,显示压力测试系统的链路监控视图;其中,在链路监控视图中,对应于被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,该系统还包括日志收集节点;若本节点为终止节点,
在向接收到的测试服务请求中插入本节点对应的传输日志信息之后,该方法还包括:
终止节点向日志收集节点发送目标日志信息;
获得目标日志信息,包括:
获得日志收集节点中存储的目标日志信息。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
参见图7,图中示出了本公开的实施例提供的压侧机700的结构示意图。如图7所示,压侧机700包括:处理器701、收发机702、存储器703、用户接口704和总线接口。需要说明的是,压侧机700位于压力测试系统中;
处理器701,用于读取存储器703中的程序,执行下列过程:
向压力测试系统中的被测组中的起始节点输入测试服务请求;其中,测试服务请求的目的节点为被测组中的终止节点;
获得目标日志信息;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
根据目标日志信息,输出针对被测组的压力测试结果。
在一些实施例中,压测机中具有压力测试插件;
处理器701,具体用于:
调用压力测试插件,输出针对被测组的压力测试结果。
在一些实施例中,终止节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和终止节点的节点标识。
在一些实施例中,处理器701,具体用于:
根据目标日志信息,输出起始节点和终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
在一些实施例中,处理器701,具体用于:
根据目标日志信息,显示压力测试系统的链路监控视图;其中,在链路监控视图中,对应于被测组中的每个节点显示有其传输测试服务请求的平均耗时。
在一些实施例中,处理器701,具体用于:
获得压力测试系统中的日志收集节点中存储的目标日志信息。
在图7中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器701代表的一个或多个处理器和存储器703代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机702可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口704还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。
处理器701负责管理总线架构和通常的处理,存储器703可以存储处理器701在执行操作时所使用的数据。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
本公开的实施例还提供一种压侧机,包括处理器701,存储器703,存储在存储器703上并可在所述处理器701上运行的计算机程序,该计算机程序被处理器701执行时实现上述压侧机侧的压力测试方法实施例中的各个过程且能达到相同的技术效果,为避免重复,这里不再赘述。
本公开的实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器701执行时实现上述压侧机侧的压力测试方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-OnlyMemory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、磁碟或者光盘等。
参见图8,图中示出了本公开的实施例提供的节点800的结构示意图。如图8所示,节点800包括:处理器801、收发机802、存储器803、用户接口804和总线接口。需要说明的是,节点800为压力测试系统的被测组中的目标节点,被测组包括起始节点、终止节点和中间节点,目标节点为起始节点、终止节点和中间节点中的任意节点。
处理器801,用于读取存储器803中的程序,执行下列过程:
接收来自压力测试系统中的压测机的测试服务请求;
向测试服务请求中插入目标节点对应的传输日志信息;
其中,起始节点接收的测试服务请求是由压测机输入的,起始节点通过中间节点向终止节点传输测试服务请求。
在一些实施例中,目标节点中具有传输日志插件;
处理器801,具体用于:
调用传输日志插件,向测试服务请求中插入目标节点对应的传输日志信息。
在一些实施例中,目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和目标节点的节点标识。
在一些实施例中,中间节点的数量为M个,起始节点和M个中间节点中至少存在一个负载均衡节点,并且,通过M个中间节点,起始节点和终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数。
在一些实施例中,若目标节点为终止节点,处理器801,还用于:
在向测试服务请求中插入目标节点对应的传输日志信息之后,向压力测试系统中的日志收集节点发送目标日志信息;其中,目标日志信息中包括插入有终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
可见,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高压力测试时测试结果的准确度和测试效率。
在图8中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器801代表的一个或多个处理器和存储器803代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机802可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口804还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。
处理器801负责管理总线架构和通常的处理,存储器803可以存储处理器801在执行操作时所使用的数据。
可以看出,与现有技术中需要人工手动进行测试的情况相比,本公开的实施例能够提高测试结果的准确度,同时能够提高测试效率。
本公开的实施例还提供一种节点,包括处理器801,存储器803,存储在存储器803上并可在所述处理器801上运行的计算机程序,该计算机程序被处理器801执行时实现上述目标节点侧的压力测试方法实施例中的各个过程且能达到相同的技术效果,为避免重复,这里不再赘述。
本公开的实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器801执行时实现上述目标节点侧的压力测试方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-OnlyMemory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、磁碟或者光盘等。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (16)
1.一种压力测试系统,其特征在于,包括:被测组和压测机,所述被测组包括起始节点、终止节点和中间节点;其中,
所述压测机用于向所述起始节点输入目的节点为所述终止节点的测试服务请求;
所述起始节点用于通过所述中间节点向所述终止节点传输测试服务请求,并且,所述被测组中的每个节点用于向接收到的测试服务请求中插入本节点对应的传输日志信息;
所述压测机还用于获得目标日志信息,并根据所述目标日志信息,输出针对所述被测组的压力测试结果;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
所述被测组中的每个节点中均具有传输日志插件,所述被测组中的每个节点具体用于调用本节点的传输日志插件,向接收到的测试服务请求中插入本节点对应的传输日志信息;
所述被测组中的每个节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和当前节点的节点标识;
所述中间节点的数量为M个,所述起始节点和M个所述中间节点中至少存在一个负载均衡节点,并且,通过M个所述中间节点,所述起始节点和所述终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数;
所述压侧机具体用于根据所述目标日志信息,输出所述N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项。
2.根据权利要求1所述的系统,其特征在于,所述压测机中具有压力测试插件,所述压测机具体用于调用所述压力测试插件,输出针对所述被测组的压力测试结果。
3.根据权利要求1所述的系统,其特征在于,所述压测机具体用于根据所述目标日志信息,显示所述压力测试系统的链路监控视图;其中,在所述链路监控视图中,对应于所述被测组中的每个节点显示有其传输测试服务请求的平均耗时。
4.根据权利要求1所述的系统,其特征在于,所述系统还包括日志收集节点;
所述终止节点用于在向接收到的测试服务请求中插入所述终止节点对应的传输日志信息后,向所述日志收集节点发送所述目标日志信息;
所述日志收集节点用于存储所述终止节点发送的所述目标日志信息;
所述压测机具体用于获得所述日志收集节点中存储的所述目标日志信息。
5.一种压力测试方法,其特征在于,应用于压力测试系统中的压测机,所述方法包括:
向所述系统中的被测组中的起始节点输入测试服务请求;其中,所述测试服务请求的目的节点为所述被测组中的终止节点;
获得目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
根据所述目标日志信息,输出针对所述被测组的压力测试结果;
所述被测组中的每个节点中均具有传输日志插件,所述被测组中的每个节点具体用于调用本节点的传输日志插件,向接收到的测试服务请求中插入本节点对应的传输日志信息;
所述终止节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和所述终止节点的节点标识;
所述根据所述目标日志信息,输出针对所述被测组的压力测试结果,包括:
根据所述目标日志信息,输出所述起始节点和所述终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
6.根据权利要求5所述的方法,其特征在于,所述压测机中具有压力测试插件;
所述输出针对所述被测组的压力测试结果,包括:
调用所述压力测试插件,输出针对所述被测组的压力测试结果。
7.根据权利要求5所述的方法,其特征在于,所述根据所述目标日志信息,输出所述起始节点和所述终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项,包括:
根据所述目标日志信息,显示所述压力测试系统的链路监控视图;其中,在所述链路监控视图中,对应于所述被测组中的每个节点显示有其传输测试服务请求的平均耗时。
8.根据权利要求5所述的方法,其特征在于,所述获得目标日志信息,包括:
获得所述系统中的日志收集节点中存储的所述目标日志信息。
9.一种压力测试装置,其特征在于,应用于压力测试系统中的压测机,所述装置包括:
输入模块,用于向所述系统中的被测组中的起始节点输入测试服务请求;其中,所述测试服务请求的目的节点为所述被测组中的终止节点;
获得模块,用于获得目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息;
输出模块,用于根据所述目标日志信息,输出针对所述被测组的压力测试结果;
其中,所述被测组中的每个节点中均具有传输日志插件,所述被测组中的每个节点具体用于调用本节点的传输日志插件,向接收到的测试服务请求中插入本节点对应的传输日志信息;
终止节点对应的传输日志信息中包括:测试服务请求的接收时间戳、测试服务请求的发送时间戳和终止节点的节点标识;
输出模块,具体用于:根据目标日志信息,输出起始节点和终止节点之间形成的N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及被测组中的每个节点传输测试服务请求的平均耗时中的至少一项;其中,N为大于或等于2的整数。
10.一种压力测试方法,其特征在于,应用于压力测试系统的被测组中的目标节点,所述被测组包括起始节点、终止节点和中间节点,所述目标节点为所述起始节点、所述终止节点和所述中间节点中的任意节点;
所述方法包括:
接收来自所述系统中的压测机的测试服务请求;
向所述测试服务请求中插入所述目标节点对应的传输日志信息;
其中,所述起始节点接收的测试服务请求是由所述压测机输入的,所述起始节点通过所述中间节点向所述终止节点传输测试服务请求;
所述目标节点中具有传输日志插件;
所述向所述测试服务请求中插入所述目标节点对应的传输日志信息,包括:
调用所述传输日志插件,向所述测试服务请求中插入所述目标节点对应的传输日志信息;
所述目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和所述目标节点的节点标识;
所述中间节点的数量为M个,所述起始节点和M个所述中间节点中至少存在一个负载均衡节点,并且,通过M个所述中间节点,所述起始节点和所述终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数;
所述压侧机具体用于根据所述目标日志信息,输出所述N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项。
11.根据权利要求10所述的方法,其特征在于,若所述目标节点为所述终止节点,所述向所述测试服务请求中插入所述目标节点对应的传输日志信息之后,所述方法还包括:
向所述系统中的日志收集节点发送目标日志信息;其中,所述目标日志信息中包括插入有所述终止节点对应的传输日志信息的测试服务请求中的所有传输日志信息。
12.一种压力测试装置,其特征在于,应用于压力测试系统的被测组中的目标节点,所述被测组包括起始节点、终止节点和中间节点,所述目标节点为所述起始节点、所述终止节点和所述中间节点中的任意节点;
所述装置包括:
接收模块,用于接收来自所述系统中的压测机的测试服务请求;
插入模块,用于向所述测试服务请求中插入所述目标节点对应的传输日志信息;
其中,所述起始节点接收的测试服务请求是由所述压测机输入的,所述起始节点通过所述中间节点向所述终止节点传输测试服务请求;
所述目标节点中具有传输日志插件;
所述向所述测试服务请求中插入所述目标节点对应的传输日志信息,包括:
调用所述传输日志插件,向所述测试服务请求中插入所述目标节点对应的传输日志信息;
所述目标节点对应的传输日志信息中包括:测试服务请求的输入时间戳、测试服务请求的输出时间戳和所述目标节点的节点标识;
所述中间节点的数量为M个,所述起始节点和M个所述中间节点中至少存在一个负载均衡节点,并且,通过M个所述中间节点,所述起始节点和所述终止节点之间形成有N条链路;其中,M和N均为大于或等于2的整数;
所述压侧机具体用于根据所述目标日志信息,输出所述N条链路中的每条链路的平均响应时间、每条链路承担测试服务请求的百分比,以及所述被测组中的每个节点传输测试服务请求的平均耗时中的至少一项。
13.一种压测机,其特征在于,包括处理器,存储器,存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求5至8中任一项所述的压力测试方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求5至8中任一项所述的压力测试方法的步骤。
15.一种节点,其特征在于,包括处理器,存储器,存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求10至11中任一项所述的压力测试方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求10至11中任一项所述的压力测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811541378.7A CN109600280B (zh) | 2018-12-17 | 2018-12-17 | 压力测试系统、方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811541378.7A CN109600280B (zh) | 2018-12-17 | 2018-12-17 | 压力测试系统、方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109600280A CN109600280A (zh) | 2019-04-09 |
CN109600280B true CN109600280B (zh) | 2021-02-02 |
Family
ID=65963046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811541378.7A Active CN109600280B (zh) | 2018-12-17 | 2018-12-17 | 压力测试系统、方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109600280B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112242917A (zh) * | 2019-07-19 | 2021-01-19 | 广州汽车集团股份有限公司 | 一种车联网服务质量检测方法及系统 |
CN110489339B (zh) * | 2019-07-26 | 2023-01-03 | 北京字节跳动网络技术有限公司 | 客户端压测报表生成方法、系统、介质和电子设备 |
CN110532191A (zh) * | 2019-09-05 | 2019-12-03 | 北京博睿宏远数据科技股份有限公司 | 一种压力测试方法、系统及集群 |
CN112202632A (zh) * | 2020-09-24 | 2021-01-08 | 建信金融科技有限责任公司 | 报文的提取方法、装置、电子设备及计算机可读存储介质 |
CN112306837A (zh) * | 2020-11-10 | 2021-02-02 | 光大兴陇信托有限责任公司 | 一种云压力测试方法及平台、设备及可读存储介质 |
CN113849361B (zh) * | 2021-09-28 | 2023-08-08 | 北京百度网讯科技有限公司 | 测试服务节点的方法、装置、设备以及存储介质 |
CN114338447B (zh) * | 2021-12-29 | 2024-07-16 | 天翼物联科技有限公司 | Radius环境下的全链路压测方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868097A (zh) * | 2015-01-22 | 2016-08-17 | 阿里巴巴集团控股有限公司 | 系统测试方法及其装置 |
EP3062228A1 (en) * | 2015-02-25 | 2016-08-31 | Rovio Entertainment Ltd | Lightweight functional testing |
CN107368396A (zh) * | 2017-08-22 | 2017-11-21 | 北京计算机技术及应用研究所 | 一种面向国产化计算机的自动化测试系统及方法 |
CN108521353A (zh) * | 2018-04-02 | 2018-09-11 | 深圳前海微众银行股份有限公司 | 定位性能瓶颈的处理方法、设备及可读存储介质 |
CN108920369A (zh) * | 2018-07-02 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种服务器压力测试方法、装置、设备及存储介质 |
-
2018
- 2018-12-17 CN CN201811541378.7A patent/CN109600280B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868097A (zh) * | 2015-01-22 | 2016-08-17 | 阿里巴巴集团控股有限公司 | 系统测试方法及其装置 |
EP3062228A1 (en) * | 2015-02-25 | 2016-08-31 | Rovio Entertainment Ltd | Lightweight functional testing |
CN107368396A (zh) * | 2017-08-22 | 2017-11-21 | 北京计算机技术及应用研究所 | 一种面向国产化计算机的自动化测试系统及方法 |
CN108521353A (zh) * | 2018-04-02 | 2018-09-11 | 深圳前海微众银行股份有限公司 | 定位性能瓶颈的处理方法、设备及可读存储介质 |
CN108920369A (zh) * | 2018-07-02 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种服务器压力测试方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109600280A (zh) | 2019-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109600280B (zh) | 压力测试系统、方法、装置及计算机可读存储介质 | |
CN108768791B (zh) | 一种信息采集配置管理系统及方法 | |
CN103067214B (zh) | 用于测试网站性能的方法、客户端、服务器和系统 | |
CN109617759A (zh) | 区块链系统稳定性测试方法、装置、设备及存储介质 | |
US8886795B2 (en) | Method and system for determining response time of a server | |
CN109885496B (zh) | 测试日志管理方法及系统 | |
US20060045019A1 (en) | Network testing agent with integrated microkernel operating system | |
CN110034972B (zh) | 服务器压力测试方法和装置 | |
CN112202647B (zh) | 区块链网络中的测试方法、装置及测试设备 | |
US9866466B2 (en) | Simulating real user issues in support environments | |
CN113127356A (zh) | 压测方法、装置、电子设备及存储介质 | |
Zhang et al. | Workload service requirements analysis: A queueing network optimization approach | |
CN107360036B (zh) | 一种网络故障定位方法、终端和服务器 | |
CN110503297B (zh) | 业务场景获取方法、装置、电子设备及介质 | |
CN117478547A (zh) | Dpu网卡tcp协议栈内存泄漏检测方法、装置、设备及存储介质 | |
CN112118151A (zh) | 网络测速方法、装置、系统、电子设备及存储介质 | |
CN114896025A (zh) | 服务网格的架构优化方法、装置、计算机设备和存储介质 | |
CN117176802B (zh) | 一种业务请求的全链路监控方法、装置、电子设备及介质 | |
CN113238965B (zh) | 一种接口测试脚本生成方法、系统及存储介质 | |
CN113064777B (zh) | 数据采集服务的测试方法和装置 | |
RU2532714C2 (ru) | Способ получения данных при оценке ресурсов сети и устройство для осуществления способа | |
US20080162687A1 (en) | Data acquisition system and method | |
CN114285779B (zh) | 测试请求的处理方法、装置和系统 | |
CN113747506B (zh) | 一种资源调度方法、装置和网络系统 | |
CN114928638A (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: 20211119 Address after: Room 103, building 1, yard 4, Hengxing Road, Gaoliying Town, Shunyi District, Beijing Patentee after: Beijing Rockwell Technology Co.,Ltd. Address before: Room 801, 8 / F, building 3, No.10 courtyard, Wangjing street, Chaoyang District, Beijing 100102 Patentee before: BEIJING CHJ AUTOMOTIVE TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |