CN109542712B - 服务器压力测试方法、装置、计算机设备和存储介质 - Google Patents

服务器压力测试方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN109542712B
CN109542712B CN201811301765.3A CN201811301765A CN109542712B CN 109542712 B CN109542712 B CN 109542712B CN 201811301765 A CN201811301765 A CN 201811301765A CN 109542712 B CN109542712 B CN 109542712B
Authority
CN
China
Prior art keywords
server
tested
test
connection number
concurrent connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811301765.3A
Other languages
English (en)
Other versions
CN109542712A (zh
Inventor
郑如刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201811301765.3A priority Critical patent/CN109542712B/zh
Publication of CN109542712A publication Critical patent/CN109542712A/zh
Application granted granted Critical
Publication of CN109542712B publication Critical patent/CN109542712B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请涉及一种服务器压力测试方法、装置、计算机设备和存储介质。所述方法包括:获取待测服务器的初始并发连接数;根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至待测服务器;获取待测服务器返回的根据访问请求得到的测试响应值,根据测试响应值得到测试误差;根据测试误差对所述待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。本方法基于人工智能技术,提高了服务器性能压力测试效率,避免人工盲目探测服务器的过程比较繁琐的缺陷。

Description

服务器压力测试方法、装置、计算机设备和存储介质
技术领域
本申请涉及互联网技术领域,特别是涉及一种服务器压力测试方法、装置、计算机设备和存储介质。
背景技术
随着互联网技术的快速发展,越来越多的业务都由各自的服务器提供服务,但是服务器的承载能力是有限的,为了确保服务器能够稳定运行,需要对服务器的性能进行压力测试。
服务器压力测试是指模仿用户同时对服务器发起大量访问请求进而得到服务器响应情况的测试。传统对服务器进行压力测试的方法,是根据服务器性能压力需求,采用人工逐步探测的方法;主要通过编写测试用例,一步一步对服务器性能进行探测,直到服务器的性能(比如CPU)达到阈值为止,以此评估服务器的性能,确定服务器的最高并发连接数。但是需要经过不停的测试,过程比较繁琐,导致服务器性能压力测试效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高服务器性能压力测试效率的服务器压力测试方法、装置、计算机设备和存储介质。
一种服务器压力测试方法,所述方法包括:
获取待测服务器的初始并发连接数;
根据所述初始并发连接数和预设第一梯度,生成多个访问请求,并将所述访问请求发送至所述待测服务器;
获取所述待测服务器返回的根据所述访问请求得到的测试响应值,根据所述测试响应值得到测试误差;
根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件;
当所述待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将所述目标并发连接数作为所述待测服务器的目标压力测试结果。
在其中一个实施例中,所述根据所述初始并发连接数和预设第一梯度,生成多个访问请求,包括:
根据预设第一梯度对所述初始并发连接数进行调整,得到调整后的初始并发连接数;
创建与所述调整后的初始并发连接数一致的虚拟用户;
根据创建的虚拟用户,生成多个访问请求。
在其中一个实施例中,所述根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件,包括:
根据所述测试误差和所述预设第一梯度,对访问请求数进行调整;
将调整后的访问请求数对应的访问请求发送至所述待测服务器,对所述待测服务器进行反复测试;
若所述待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差,则停止测试。
在其中一个实施例中,所述方法还包括:
访问待测服务器管理平台;
通过所述待测服务器管理平台,获取待测服务器的设备标识号,所述设备标识号用于识别需要进行压力测试的服务器。
在其中一个实施例中,在将所述目标并发连接数作为所述待测服务器的目标压力测试结果之后,还包括:
根据所述待测服务器的所述目标并发连接数,确定与所述目标并发连接数对应的权重;
根据所述目标并发连接数对应的测试响应值,确定与所述测试响应值对应的权重;
根据所述目标并发连接数及对应的权重和所述测试响应值及对应的权重,确定所述待测服务器的性能值;
根据预设的性能值与性能等级的对应关系,确定所述待测服务器的性能等级。
在其中一个实施例中,在将所述目标并发连接数作为所述待测服务器的目标压力测试结果之后,还包括:
将所述待测服务器标记为已测服务器,并获取所述已测服务器的基本信息;
将所述已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成所述已测服务器的性能测试报告;
将所述性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
一种服务器压力测试装置,所述装置包括:
初始连接数获取模块,用于获取待测服务器的初始并发连接数;
请求生成模块,用于根据所述初始并发连接数和预设第一梯度,生成多个访问请求,并将所述访问请求发送至所述待测服务器;
误差获取模块,用于获取所述待测服务器返回的根据所述访问请求得到的测试响应值,根据所述测试响应值得到测试误差;
反复测试模块,用于根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件;
目标结果获取模块,用于当所述待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将所述目标并发连接数作为所述待测服务器的目标压力测试结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待测服务器的初始并发连接数;
根据所述初始并发连接数和预设第一梯度,生成多个访问请求,并将所述访问请求发送至所述待测服务器;
获取所述待测服务器返回的根据所述访问请求得到的测试响应值,根据所述测试响应值得到测试误差;
根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件;
当所述待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将所述目标并发连接数作为所述待测服务器的目标并发连接数。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待测服务器的初始并发连接数;
根据所述初始并发连接数和预设第一梯度,生成多个访问请求,并将所述访问请求发送至所述待测服务器;
获取所述待测服务器返回的根据所述访问请求得到的测试响应值,根据所述测试响应值得到测试误差;
根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件;
当所述待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将所述目标并发连接数作为所述待测服务器的目标并发连接数。
上述服务器压力测试方法、装置、计算机设备和存储介质,测试服务器根据初始并发连接数和预设第一梯度,生成多个访问请求,将访问请求发送至待测服务器;根据待测服务器返回的根据访问请求得到的测试响应值,得到测试误差;根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,并将目标并发连接数作为待测服务器的目标压力测试结果,从而实现了对待测服务器的压力测试,无需通过人工编写测试用例,一步一步对服务器性能进行探测,以此评估服务器的目标并发连接数的复杂过程;避免了传统方法中对服务器性能进行压力测试的过程比较繁琐的缺陷,从而简化了对服务器性能进行压力测试的过程,进一步提高了服务器性能压力测试效率;同时克服了人工盲目对服务器性能进行探测,而影响服务器性能的缺陷。
附图说明
图1为一个实施例中服务器压力测试方法的应用场景图;
图2为一个实施例中服务器压力测试方法的流程示意图;
图3为一个实施例中根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件的步骤的流程示意图;
图4为另一个实施例中服务器压力测试方法的流程示意图;
图5为一个实施例中服务器压力测试装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的服务器压力测试方法,可以应用于如图1所示的应用环境中。其中,测试服务器110与待测服务器120通过网络进行通信。测试服务器110根据压力测试请求,确定发送该压力测试请求的服务器,即需要测试的服务器,将该服务器作为待测服务器120;通过互联网获取待测服务器120的历史最大并发连接数,作为初始并发连接数;根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至待测服务器120。待测服务器120根据访问请求得到测试响应值,并将测试响应值发送至测试服务器110。测试服务器110对测试响应值进行分析,得到测试误差;根据测试误差对待测服务器120进行反复测试,直到待测服务器120返回的测试响应值满足设定条件;当待测服务器120返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。其中,测试服务器110和待测服务器120均可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种服务器压力测试方法,以该方法应用于图1中的测试服务器为例进行说明,包括以下步骤:
步骤S201,获取待测服务器的初始并发连接数。
测试服务器根据压力测试请求,确定发送该压力测试请求的服务器,即需要测试的服务器,并将该服务器作为待测服务器。初始并发连接数指的是待测服务器的历史最大并发连接数。并发连接数指的是待测服务器能够满足同时访问的在线用户数,与用户的访问请求数相对应。
测试服务器通过互联网获取待测服务器的历史压力测试数据,从历史压力响应数据中,筛选出待测服务器的历史最大并发连接数,作为初始并发连接数。方便后续基于初始并发连接数,对待测服务器进行压力测试,避免盲目探测服务器而影响服务器性能,同时提高了服务器性能压力测试效率。
步骤S202,根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至待测服务器。
预设第一梯度能够提供初始并发连接数的调整幅度;访问请求指的是模拟用户向待测服务器发起的请求。测试服务器根据预设第一梯度,对待测服务器的初始并发连接数进行调整,得到调整后的初始并发连接数;根据调整后的初始并发连接数,生成对应的访问请求数的访问请求,并将生成的访问请求发送至待测服务器,以对待测服务器进行压力测试。在这个过程中,将待测服务器的初始并发连接数作为调整的基础,避免人工盲目对服务器性能进行探测而造成测试过程繁琐的缺陷,从而简化了服务器压力测试流程,进一步提高了服务器性能压力测试效率。
步骤S203,获取待测服务器返回的根据访问请求得到的测试响应值,根据测试响应值得到测试误差。
测试响应值与访问请求数相对应,能够衡量待测服务器的CPU占比的高低程度,也可以衡量待测服务器的其他指标,比如内存占比,硬盘读写正常占比。测试误差能够衡量待测服务器性能是否达到预设阈值。测试服务器将获取的测试响应值与预设响应值之间的差值作为测试误差,方便后续根据测试误差对访问请求数进行调整。
步骤S204,根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件。
测试服务器基于测试误差,对访问请求数进行调整,根据调整后的访问请求数对应的访问请求,自动对待测服务器进行压力测试,直到待测服务器返回的测试响应值满足设定条件,比如直到待测服务器返回的测试响应值大于预设响应值,这样可以大致评估待测服务器的性能,简化了服务器性能压力测试流程,有效地提高了服务器性能压力测试效率,避免人工盲目探测服务器而影响服务器性能的缺陷。
步骤S205,当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。
目标并发连接数指的是待测服务器能够满足同时访问的在线用户数的最大值。比如,测试服务器若检测到待测服务器的返回的测试响应值大于预设响应值,获取测试响应值对应的当前访问请求数,将与当前访问请求数一致的目标并发连接数,作为待测服务器的目标压力测试结果,方便测试人员从目标压力测试结果中,大致评估待测服务器性能,以判断待测服务器的承载能力是否合格。
上述服务器压力测试方法中,测试服务器根据初始并发连接数和预设第一梯度,生成多个访问请求,将访问请求发送至待测服务器;根据待测服务器返回的根据访问请求得到的测试响应值,得到测试误差;根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,并将目标并发连接数作为待测服务器的目标压力测试结果,从而实现了对待测服务器的压力测试,无需通过人工编写测试用例,一步一步对服务器性能进行探测,以此评估服务器的目标并发连接数的复杂过程;避免了传统方法中对服务器性能进行压力测试的过程比较繁琐的缺陷,从而简化了对服务器性能进行压力测试的过程,进一步提高了服务器性能压力测试效率;同时克服了人工盲目对服务器性能进行探测,而影响服务器性能的缺陷。
在一个实施例中,上述步骤S202,根据初始并发连接数和预设第一梯度,生成多个访问请求,包括:根据预设第一梯度对初始并发连接数进行调整,得到调整后的初始并发连接数;创建与调整后的初始并发连接数一致的虚拟用户;根据创建的虚拟用户,生成多个访问请求。
比如,测试服务器将初始并发连接数和预设第一梯度之和,作为调整后的初始并发连接数;测试服务器在本端内部创建与调整后的初始并发连接数一致的、能够模拟用户的访问请求的虚拟用户;从本地数据库中获取预设激活指令,根据预设激活指令,同时激活已创建的多个虚拟用户,以触发虚拟用户生成对应的访问请求。
测试服务器根据待测服务器的初始并发连接数,并结合预设第一梯度,逐步调整访问请求数,可以大大简化服务器性能压力测试流程,进一步提高了服务器性能压力测试效率。同时,通过模拟用户的访问请求,可以在不影响服务器性能的情况下,实现快速部署,从而有效地对服务器性能进行压力测试,避免了人工盲目探测服务器而影响服务器性能的缺陷。
在一个实施例中,如图3所示,根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件的步骤具体包括:
步骤S301,根据测试误差和预设第一梯度,对访问请求数进行调整。
步骤S302,将调整后的访问请求数对应的访问请求发送至待测服务器,对待测服务器进行反复测试。
步骤S303,若待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差,则停止测试。
测试服务器根据测试误差和预设第一梯度,对初始并发连接数进行调整,以此对对应的访问请求数进行调整;将调整后的访问请求数对应的访问请求发送至待测服务器,获取待测服务器返回的根据访问请求得到的测试响应值与预设响应值之间的测试误差;若测试误差大于或等于预设误差,则根据测试误差对待测服务器进行再次测试,直到待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差。
测试服务器基于误差反向传播和梯度下降法,自动对待测服务器进行压力测试,可以大致评估待测服务器的性能,从而简化了服务器性能压力测试流程,有效地提高了服务器性能压力测试效率,避免了人工盲目探测服务器而影响服务器性能的缺陷。
若测试人员身边没有待测服务器,但又需要对待测服务器性能进行评估,则可以对待测服务器进行远程压力测试。在一个实施例中,服务器压力测试方法还包括:访问待测服务器管理平台;通过待测服务器管理平台,获取待测服务器的设备标识号,设备标识号用于识别需要进行远程压力测试的服务器。比如,在测试服务器获取设备标识号,并与设备标识号对应的待测服务器建立远程连接之后,测试服务器可以获取待测服务器的初始并发连接数,并将基于该初始并发连接数生成的多个访问请求通过远程协议发送至待测服务器中,以对待测服务器进行压力测试。
通过对待测服务器进行远程压力测试,可以避免测试人员身边没有待测服务器,则无法对待测服务器进行压力测试的缺陷,进一步提高了服务器性能压力测试效率。同时,实现了通过一台测试服务器对多台待测服务器进行压力测试的目的。
在一个实施例中,如图4所示,提供了另一种服务器压力测试方法,包括以下步骤:
步骤S401,访问待测服务器管理平台;通过待测服务器管理平台,获取待测服务器的设备标识号;获取与设备标识号对应的待测服务器的初始并发连接数;设备标识号用于识别需要进行远程压力测试的服务器。
步骤S402,根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至待测服务器。
步骤S403,获取待测服务器返回的根据访问请求得到的测试响应值,根据测试响应值得到测试误差。
步骤S404,根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件。
步骤S405,当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。
上述服务器压力测试方法中,测试服务器将生成的访问请求发送至待测服务器;根据待测服务器返回的根据访问请求得到的测试响应值,得到测试误差;根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果,从而实现了对待测服务器的压力测试,无需通过人工盲目探测服务器的复杂过程,从而简化了服务器性能压力测试流程,提高了服务器性能压力测试效率,避免了人工盲目探测服务器而影响服务器性能的缺陷;同时实现了对服务器进行远程压力测试的效果。
为了方便了解待测服务器的性能,以及根据业务需求选择合适的待测服务器,测试服务器可以将待测服务器按照性能等级进行分类。在一个实施例中,上述步骤S205,在将目标并发连接数作为待测服务器的目标压力测试结果之后,还包括:根据待测服务器的目标并发连接数,确定与目标并发连接数对应的权重;根据目标并发连接数对应的测试响应值,确定与测试响应值对应的权重;根据目标并发连接数及对应的权重和测试响应值及对应的权重,确定待测服务器的性能值;根据预设的性能值与性能等级的对应关系,确定待测服务器的性能等级。通过综合分析待测服务器的相关信息,可以有效地确定待测服务器的性能等级,方便测试人员根据业务需求选择合适的服务器。
比如,待测服务器M的目标并发连接数为A,与目标并发连接数A对应的权重为A1;目标并发连接数A对应的测试响应值为B,与测试响应值B对应的权重为B1;根据目标并发连接数A及对应的权重A1和测试响应值B及对应的权重B1,确定待测服务器M的性能值C=A×A1+B×B1;根据预设的性能值与性能等级的对应关系,确定与待测服务器M的性能值C对应的性能等级为C1。
在得到待测服务器的目标并发连接数之后,为了方便测试人员了解待测服务器性能,可以根据待测服务器的目标并发连接数,生成待测服务器的性能测试报告。在一个实施例中,上述步骤S205,在将目标并发连接数作为待测服务器的目标压力测试结果之后,还包括:将待测服务器标记为已测服务器,并获取已测服务器的基本信息;将已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成已测服务器的性能测试报告;将性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
将待测服务器标记为已测服务器,可以将待测服务器与已测服务器进行区分,以提醒测试人员相关服务器已经测试完毕,避免重复测试而影响服务器性能。同时,结合已测服务器的相关信息,将已测服务器的基本信息、目标并发连接数及对应的测试响应值依次加载到预设性能测试报告模板中,生成已测服务器的性能测试报告,并按照设备标识号分类存储至本地数据库,方便测试人员根据设备标识号从本地数据库中查看对应的已测服务器的相关信息,实现直观了解已测服务器的相关信息的目的。
此外,可以根据预设频率,将本地数据库存储的已测服务器的性能测试报告进行更新,保证获取待测服务器的相关信息的时效性和准确性。甚至,为了及时对已测服务器的相关信息进行监控,测试服务器可以将待测服务器的性能测试报告发送至对应的终端。比如,测试终端将已测服务器的性能测试报告发送至测试人员的手机,以通过手机中的浏览器进行显示,方便测试人员及时了解已测服务器的相关信息。
考虑到本地数据库存储有多个已测服务器的性能测试报告,若要对新的待测服务器性能进行评估,可以根据新的待测服务器的设备标识号查询本地数据库,获取对应的性能测试报告;通过分析性能测试报告,可以大致评估新的待测服务器的性能。
在一个实施例中,服务器压力测试方法还包括:获取新的待测服务器的设备标识号;根据设备标识号在本地数据库进行查询,调取与设备标识号对应的性能测试报告;识别调取的性能测试报告,得到待测服务器的目标并发连接数。通过查询本地数据库,可以获取新的待测服务器的目标并发连接数,以此评估新的待测服务器性能,无需重新对新的待测服务器进行压力测试,从而提高了服务器性能压力测试效率。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种服务器压力测试装置,包括:初始连接数获取模块510、请求生成模块520、误差获取模块530、反复测试模块540和目标结果获取模块550,其中:
初始连接数获取模块510,用于获取待测服务器的初始并发连接数。
请求生成模块520,用于根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至待测服务器。
误差获取模块530,用于获取待测服务器返回的根据访问请求得到的测试响应值,根据测试响应值得到测试误差。
反复测试模块540,用于根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件。
目标结果获取模块550,用于当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。
在一个实施例中,请求生成模块还用于根据预设第一梯度对初始并发连接数进行调整,得到调整后的初始并发连接数;创建与调整后的初始并发连接数一致的虚拟用户;根据创建的虚拟用户,生成多个访问请求。
在一个实施例中,反复测试模块还用于根据测试误差和预设第一梯度,对访问请求数进行调整;将调整后的访问请求数对应的访问请求发送至待测服务器,对待测服务器进行反复测试;若待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差,则停止测试。
在一个实施例中,服务器压力测试装置还包括标识号获取模块,用于访问待测服务器管理平台;通过待测服务器管理平台,获取待测服务器的设备标识号,设备标识号用于识别需要进行远程压力测试的服务器。
在一个实施例中,服务器压力测试装置还包括性能确定模块,用于目标结果获取模块将目标并发连接数作为待测服务器的目标压力测试结果之后,根据待测服务器的目标并发连接数,确定与目标并发连接数对应的权重;根据目标并发连接数对应的测试响应值,确定与测试响应值对应的权重;根据目标并发连接数及对应的权重和测试响应值及对应的权重,确定待测服务器的性能值;根据预设的性能值与性能等级的对应关系,确定待测服务器的性能等级。
在一个实施例中,服务器压力测试装置还包括报告生成模块,用于目标结果获取模块将目标并发连接数作为待测服务器的目标压力测试结果之后,将待测服务器标记为已测服务器,并获取已测服务器的基本信息;将已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成已测服务器的性能测试报告;将性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
上述各个实施例,服务器压力测试装置根据待测服务器返回的根据访问请求得到的测试响应值,得到测试误差;根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,并将目标并发连接数作为待测服务器的目标压力测试结果,从而实现了对待测服务器的压力测试,无需通过人工编写测试用例,一步一步对服务器性能进行探测,以此评估服务器的目标并发连接数的复杂过程;避免了传统方法中对服务器性能进行压力测试的过程比较繁琐的缺陷,从而简化了对服务器性能进行压力测试的过程,进一步提高了服务器性能压力测试效率,同时避免了人工盲目探测服务器而影响服务器性能的缺陷。
关于服务器压力测试装置的具体限定可以参见上文中对于服务器压力测试方法的限定,在此不再赘述。上述服务器压力测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储待测服务器的目标并发连接数。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种服务器压力测试方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待测服务器的初始并发连接数;
根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至所述待测服务器;
获取待测服务器返回的根据访问请求得到的测试响应值,根据测试响应值得到测试误差;
根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;
当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据预设第一梯度对初始并发连接数进行调整,得到调整后的初始并发连接数;创建与调整后的初始并发连接数一致的虚拟用户;根据创建的虚拟用户,生成多个访问请求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据测试误差和第一梯度,对访问请求数进行调整;将调整后的访问请求数对应的访问请求发送至待测服务器,对待测服务器进行反复测试;若待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差,则停止测试。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:访问待测服务器管理平台;通过待测服务器管理平台,获取待测服务器的设备标识号,设备标识号用于识别需要进行远程压力测试的服务器。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在将目标并发连接数,作为待测服务器的目标压力测试结果之后,根据待测服务器的目标并发连接数,确定与目标并发连接数对应的权重;根据目标并发连接数对应的测试响应值,确定与测试响应值对应的权重;根据目标并发连接数及对应的权重和测试响应值及对应的权重,确定待测服务器的性能值;根据预设的性能值与性能等级的对应关系,确定待测服务器的性能等级。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在将目标并发连接数,作为待测服务器的目标压力测试结果之后,将待测服务器标记为已测服务器,并获取已测服务器的基本信息;将已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成已测服务器的性能测试报告;将性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
上述各个实施例,计算机设备通过处理器上运行的计算机程序,简化了对服务器性能进行压力测试的过程,提高了服务器性能压力测试效率;同时克服了人工盲目对服务器性能进行探测,而影响服务器性能的缺陷。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待测服务器的初始并发连接数;
根据初始并发连接数和预设第一梯度,生成多个访问请求,并将访问请求发送至待测服务器;
获取待测服务器返回的根据访问请求得到的测试响应值,根据测试响应值得到测试误差;
根据测试误差对待测服务器进行反复测试,直到待测服务器返回的测试响应值满足设定条件;
当待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将目标并发连接数作为待测服务器的目标压力测试结果。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据预设第一梯度对初始并发连接数进行调整,得到调整后的初始并发连接数;创建与调整后的初始并发连接数一致的虚拟用户;根据创建的虚拟用户,生成多个访问请求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据测试误差和第一梯度,对访问请求数进行调整;将调整后的访问请求数对应的访问请求发送至待测服务器,对待测服务器进行反复测试;若待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差,则停止测试。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:访问待测服务器管理平台;通过待测服务器管理平台,获取待测服务器的设备标识号,设备标识号用于识别需要进行远程压力测试的服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在将目标并发连接数,作为待测服务器的目标压力测试结果之后,根据待测服务器的目标并发连接数,确定与目标并发连接数对应的权重;根据目标并发连接数对应的测试响应值,确定与测试响应值对应的权重;根据目标并发连接数及对应的权重和测试响应值及对应的权重,确定待测服务器的性能值;根据预设的性能值与性能等级的对应关系,确定待测服务器的性能等级。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在将目标并发连接数,作为待测服务器的目标压力测试结果之后,将待测服务器标记为已测服务器,并获取已测服务器的基本信息;将已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成已测服务器的性能测试报告;将性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
上述各个实施例,计算机可读存储介质通过其存储的计算机程序,简化了对服务器性能进行压力测试的过程,提高了服务器性能压力测试效率;同时克服了人工盲目对服务器性能进行探测,而影响服务器性能的缺陷。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种服务器压力测试方法,所述方法包括:
获取待测服务器的初始并发连接数;
根据预设第一梯度,对所述待测服务器的初始并发连接数进行调整,得到调整后的初始并发连接数;根据所述调整后的初始并发连接数,生成对应的访问请求数的访问请求,并将所述访问请求发送至所述待测服务器,所述预设第一梯度用于提供所述初始并发连接数的调整幅度;
获取所述待测服务器返回的根据所述访问请求得到的测试响应值,根据所述测试响应值得到测试误差;
根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件;
当所述待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将所述目标并发连接数作为所述待测服务器的目标压力测试结果;
根据所述待测服务器的所述目标并发连接数,确定与所述目标并发连接数对应的权重;
根据所述目标并发连接数对应的测试响应值,确定与所述测试响应值对应的权重;
根据所述目标并发连接数及对应的权重和所述测试响应值及对应的权重,确定所述待测服务器的性能值;
根据预设的性能值与性能等级的对应关系,确定所述待测服务器的性能等级。
2.根据权利要求1所述的方法,其特征在于,所述根据所述调整后的初始并发连接数,生成对应的访问请求数的访问请求,包括:
创建与所述调整后的初始并发连接数一致的虚拟用户;
根据创建的虚拟用户,生成多个访问请求,所述访问请求的数量与所述调整后的初始并发连接数对应。
3.根据权利要求2所述的方法,其特征在于,所述根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件,包括:
根据所述测试误差和所述预设第一梯度,对访问请求数进行调整;
将调整后的访问请求数对应的访问请求发送至所述待测服务器,对所述待测服务器进行反复测试;
若所述待测服务器返回的测试响应值与预设响应值之间的测试误差小于预设误差,则停止测试。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
访问待测服务器管理平台;
通过所述待测服务器管理平台,获取待测服务器的设备标识号,所述设备标识号用于识别需要进行远程压力测试的服务器。
5.根据权利要求4所述的方法,其特征在于,在将所述目标并发连接数作为所述待测服务器的目标压力测试结果之后,还包括:
将所述待测服务器标记为已测服务器,并获取所述已测服务器的基本信息;
将所述已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成所述已测服务器的性能测试报告;
将所述性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
6.一种服务器压力测试装置,其特征在于,所述装置包括:
初始连接数获取模块,用于获取待测服务器的初始并发连接数;
请求生成模块,用于根据预设第一梯度,对所述待测服务器的初始并发连接数进行调整,得到调整后的初始并发连接数;根据所述调整后的初始并发连接数,生成对应的访问请求数的访问请求,并将所述访问请求发送至所述待测服务器,所述预设第一梯度用于提供所述初始并发连接数的调整幅度;
误差获取模块,用于获取所述待测服务器返回的根据所述访问请求得到的测试响应值,根据所述测试响应值得到测试误差;
反复测试模块,用于根据所述测试误差对所述待测服务器进行反复测试,直到所述待测服务器返回的测试响应值满足设定条件;
目标结果获取模块,用于当所述待测服务器返回的测试响应值满足设定条件时,获取与当前访问请求数对应的目标并发连接数,将所述目标并发连接数作为所述待测服务器的目标压力测试结果;
性能确定模块,用于根据所述待测服务器的所述目标并发连接数,确定与所述目标并发连接数对应的权重;根据所述目标并发连接数对应的测试响应值,确定与所述测试响应值对应的权重;根据所述目标并发连接数及对应的权重和所述测试响应值及对应的权重,确定所述待测服务器的性能值;根据预设的性能值与性能等级的对应关系,确定所述待测服务器的性能等级。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括标识号获取模块,用于访问待测服务器管理平台;通过所述待测服务器管理平台,获取待测服务器的设备标识号,所述设备标识号用于识别需要进行远程压力测试的服务器。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
报告生成模块,用于将所述待测服务器标记为已测服务器,并获取所述已测服务器的基本信息;将所述已测服务器的基本信息、目标并发连接数及对应的测试响应值,按照预设顺序加载到预设性能测试报告模板中,生成所述已测服务器的性能测试报告;将所述性能测试报告,按照已测服务器的设备标识号分类存储至本地数据库中。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN201811301765.3A 2018-11-02 2018-11-02 服务器压力测试方法、装置、计算机设备和存储介质 Active CN109542712B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811301765.3A CN109542712B (zh) 2018-11-02 2018-11-02 服务器压力测试方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811301765.3A CN109542712B (zh) 2018-11-02 2018-11-02 服务器压力测试方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN109542712A CN109542712A (zh) 2019-03-29
CN109542712B true CN109542712B (zh) 2023-04-07

Family

ID=65845765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811301765.3A Active CN109542712B (zh) 2018-11-02 2018-11-02 服务器压力测试方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN109542712B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515782A (zh) * 2019-07-09 2019-11-29 中移(杭州)信息技术有限公司 服务器的测试方法、测试装置及测试系统
CN110519789B (zh) * 2019-08-02 2023-11-28 京信网络系统股份有限公司 性能检测方法、装置、计算机设备和存储介质
CN112749067A (zh) * 2019-10-31 2021-05-04 北京京东尚科信息技术有限公司 系统性能测试方法及装置、设备及存储介质
CN111078478B (zh) * 2019-12-17 2022-10-25 腾讯科技(深圳)有限公司 服务器压力测试方法、装置和计算机可读存储介质
CN111414300A (zh) * 2020-03-27 2020-07-14 北京字节跳动网络技术有限公司 一种对服务器进行压力测试的方法及装置
CN114077449B (zh) * 2020-08-20 2023-08-01 网联清算有限公司 数据库服务器的测试方法、装置、电子设备和存储介质
CN113590403B (zh) * 2021-08-05 2023-08-01 北京百度网讯科技有限公司 压力测试方法、装置、系统、电子设备、存储介质及产品
CN117914984A (zh) * 2024-03-19 2024-04-19 深圳百沃彰世科技有限公司 一种用于通讯设备终端的多维通讯压力测试方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428042A (zh) * 2012-05-22 2013-12-04 腾讯科技(深圳)有限公司 对服务器进行压力测试的方法及系统
CN106610896A (zh) * 2015-10-27 2017-05-03 滴滴(中国)科技有限公司 一种自适应压力测试的方法及装置
CN108574610A (zh) * 2018-01-30 2018-09-25 北京金山云网络技术有限公司 一种压力测试方法、装置、电子设备及介质
CN108632110A (zh) * 2018-03-23 2018-10-09 广州网测科技有限公司 设备性能测试方法、系统、计算机设备和存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428042A (zh) * 2012-05-22 2013-12-04 腾讯科技(深圳)有限公司 对服务器进行压力测试的方法及系统
CN106610896A (zh) * 2015-10-27 2017-05-03 滴滴(中国)科技有限公司 一种自适应压力测试的方法及装置
CN108574610A (zh) * 2018-01-30 2018-09-25 北京金山云网络技术有限公司 一种压力测试方法、装置、电子设备及介质
CN108632110A (zh) * 2018-03-23 2018-10-09 广州网测科技有限公司 设备性能测试方法、系统、计算机设备和存储介质

Also Published As

Publication number Publication date
CN109542712A (zh) 2019-03-29

Similar Documents

Publication Publication Date Title
CN109542712B (zh) 服务器压力测试方法、装置、计算机设备和存储介质
CN108763398B (zh) 数据库配置参数处理方法、装置、计算机设备和存储介质
CN106055464B (zh) 数据缓存集群压力测试装置及方法
CN110941555B (zh) 测试用例推荐方法、装置、计算机设备和存储介质
CN108848000B (zh) 网络请求测试方法、装置、计算机设备和存储介质
WO2021139103A1 (zh) 加压参数自适应调节方法、装置、计算机设备及存储介质
CN111078478B (zh) 服务器压力测试方法、装置和计算机可读存储介质
CN109218136B (zh) Wifi连接性能测试方法、装置、计算机设备和存储介质
CN112637008B (zh) 链路模拟测试方法、装置、系统、计算机设备和存储介质
CN111104644A (zh) 可靠性评估方法、装置、计算机设备和存储介质
CN111257672A (zh) 线损点检方法、装置、计算机设备和存储介质
CN110798376A (zh) 接口测试方法、装置、计算机设备和存储介质
CN111984527A (zh) 软件的性能测试方法、装置、设备和介质
CN106095688A (zh) 一种软件性能测试方法及装置
CN111124898A (zh) 问答系统测试方法、装置、计算机设备和存储介质
CN114385485A (zh) 接口测试方法、装置、设备及存储介质
CN112988606B (zh) 测试用例生成方法、装置、设备及存储介质
CN108304289B (zh) 终端指纹测试方法、装置、计算机设备及存储介质
CN112379913B (zh) 基于风险识别的软件优化方法、装置、设备及存储介质
CN111679600B (zh) 控制系统的比较方法、控制终端和计算机可读存储介质
CN115248779A (zh) 一种代码覆盖测试方法、装置、计算机设备及存储介质
CN111598390B (zh) 服务器高可用性评估方法、装置、设备和可读存储介质
CN111176965B (zh) 推荐系统预发布测试方法、装置及电子设备
CN110865939B (zh) 应用程序质量监测方法、装置、计算机设备和存储介质
CN114385498A (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