CN109828892B - 异步接口的性能测试方法、装置、计算机设备和存储介质 - Google Patents
异步接口的性能测试方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109828892B CN109828892B CN201811545334.1A CN201811545334A CN109828892B CN 109828892 B CN109828892 B CN 109828892B CN 201811545334 A CN201811545334 A CN 201811545334A CN 109828892 B CN109828892 B CN 109828892B
- Authority
- CN
- China
- Prior art keywords
- service
- processing
- server
- time
- performance
- 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
Images
Abstract
本申请涉及测试技术领域,特别是涉及一种异步接口的性能测试方法、装置、计算机设备和存储介质。所述方法包括:接收由测试终端发送的、用于性能测试的多个业务请求;将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理;记录所处理业务的第一业务数量和对应的第一处理时间;根据所述第一业务数量和第一处理时间计算单位时间的第一业务处理量;将所述第一业务处理量发送至所述测试终端,以使所述测试终端将所述第一业务处理量作为服务器的处理性能。采用本方法能够准确地测试出采用异步接口的服务器处理业务的性能。
Description
技术领域
本申请涉及测试技术领域,特别是涉及一种异步接口的性能测试方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的不断发展,计算机相关服务被广泛应用到人们生产生活中的各个领域,如通信、教育和金融等领域。对于一个计算机服务系统,它往往可以提供对应领域内多种类型的服务,为了保证所提供的服务能及时有效地完成,需要在计算机服务系统建设初期或运维过程中进行性能测试。
传统的性能测试方案中,主要的性能测试方法是:服务器在接收到测试终端发送的业务请求后,会立即响应,测试终端根据响应的时间来判断业务的处理性能。上述性能测试方案中,适用于同步接口的服务器性能测试,而对于采用异步接口的服务器性能测试,由于异步接口接收到业务请求后并不立即响应。因此,采用传统的性能测试方案,将无法准确地测试出采用异步接口的服务器处理业务的性能。
发明内容
基于此,有必要针对上述技术问题,提供一种异步接口的性能测试方法、装置、计算机设备和存储介质,能够准确地测试出采用异步接口的服务器处理业务的性能。
一种异步接口的性能测试方法,所述方法包括:
接收由测试终端发送的、用于性能测试的多个业务请求;
将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理;
记录所处理业务的第一业务数量和对应的第一处理时间;
根据所述第一业务数量和第一处理时间计算单位时间的第一业务处理量;
将所述第一业务处理量发送至所述测试终端,以使所述测试终端将所述第一业务处理量作为服务器的处理性能。
在其中一个实施例中,所述方法还包括:
按照预设增量重新配置用于处理所述业务请求所指定业务的线程;
每次重新配置线程后,执行所述接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到所述工作状态之前所对应的线程数确定为最佳线程数;
记录在所述最佳线程数时所处理的第二业务数量和对应的第二处理时间;
根据所述第二业务数量和第二处理时间计算单位时间的第二业务处理量;
将所述第二业务处理量发送至所述测试终端,以使所述测试终端将所述第二业务处理量作为所述服务器的最佳处理性能。
在其中一个实施例中,发送至所述测试终端的所述第二业务处理量,还用于将所述最佳线程数作为业务系统中各其它服务器处理业务时的最佳线程数,并将所述第二业务处理量作为业务系统中各其它服务器的最佳处理性能。
在其中一个实施例中,在按照预设增量重新所配置的线程处理对应业务的过程中,若出现以下任一种情况,则确定所述服务器的工作状态满足预设条件:
处理所述业务请求所指定的业务总处理时间大于第一预设时间;
处理其它业务的总处理时间大于第二预设时间;
所述服务器出现卡顿。
在其中一个实施例中,所述按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理包括:
获取与所述贷款业务请求对应的用户信息;
根据用户信息从数据库中查找与所述用户信息匹配的资信信息;
根据所述资信信息判断用户是否满足预设的贷款条件。
在其中一个实施例中,所述方法还包括:
将所述最佳线程数,以及在所述最佳线程数时所述服务器对应的业务数量与处理时间保存于日志列表中;
当接收到所述多个业务请求时,从所述日志列表中查找所述最佳线程数;
按照所述最佳线程数配置用于处理业务的线程。
一种异步接口的性能测试装置,所述装置包括:
业务请求接收模块,用于接收由测试终端发送的、用于性能测试的多个业务请求;
第一处理模块,用于将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理;
记录模块,用于记录所处理业务的第一业务数量和对应的第一处理时间;
计算模块,用于根据所述第一业务数量和第一处理时间计算单位时间的第一业务处理量;
发送模块,用于将所述第一业务处理量发送至所述测试终端,以使所述测试终端将所述第一业务处理量作为服务器的处理性能。
在其中一个实施例中,所述装置还包括:
线程配置模块,用于按照预设增量重新配置用于处理所述业务请求所指定业务的线程;
第二处理模块,用于每次重新配置线程后,执行所述接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到所述工作状态之前所对应的线程数确定为最佳线程数;
所述记录模块还用于记录在所述最佳线程数时所处理的第二业务数量和对应的第二处理时间;
所述计算模块还用于根据所述第二业务数量和第二处理时间计算单位时间的第二业务处理量;
所述发送模块还用于将所述第二业务处理量发送至所述测试终端,以使所述测试终端将所述第二业务处理量作为所述服务器的最佳处理性能。
在其中一个实施例中,发送至所述测试终端的所述第二业务处理量,还用于将所述最佳线程数作为业务系统中各其它服务器处理业务时的最佳线程数,并将所述第二业务处理量作为业务系统中各其它服务器的最佳处理性能。
在其中一个实施例中,所述处理各业务请求所指定的业务时服务器的工作状态满足预设条件包括:所述第二处理模块还用于在按照预设增量重新所配置的线程处理对应业务的过程中,当出现以下任一种情况,则确定所述服务器的工作状态满足预设条件:处理所述业务请求所指定的业务总处理时间大于第一预设时间;处理其它业务的总处理时间大于第二预设时间;所述服务器出现卡顿。
在其中一个实施例中,所述业务请求包括贷款业务请求;所述装置还包括:
用户信息获取模块,用于获取与所述贷款业务请求对应的用户信息;
资信信息查找模块,用于根据用户信息从数据库中查找与所述用户信息匹配的资信信息;
判断模块,用于根据所述资信信息判断用户是否满足预设的贷款条件。
在其中一个实施例中,所述装置还包括:
保存模块,用于将所述最佳线程数,以及在所述最佳线程数时所述服务器对应的业务数量与处理时间保存于日志列表中;
最佳线程数查找模块,用于当接收到所述多个业务请求时,从所述日志列表中查找所述最佳线程数;
所述线程配置模块还用于按照所述最佳线程数配置用于处理业务的线程。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收由测试终端发送的、用于性能测试的多个业务请求;
将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理;
记录所处理业务的第一业务数量和对应的第一处理时间;
根据所述第一业务数量和第一处理时间计算单位时间的第一业务处理量;
将所述第一业务处理量发送至所述测试终端,以使所述测试终端将所述第一业务处理量作为服务器的处理性能。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收由测试终端发送的、用于性能测试的多个业务请求;
将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理;
记录所处理业务的第一业务数量和对应的第一处理时间;
根据所述第一业务数量和第一处理时间计算单位时间的第一业务处理量;
将所述第一业务处理量发送至所述测试终端,以使所述测试终端将所述第一业务处理量作为服务器的处理性能。
上述异步接口的性能测试方法、装置、计算机设备和存储介质,由于异步接口性能取决于服务器的实际处理能力,测试终端向服务器集中发送多个业务请求,使得业务请求在服务器的任务队列里造成任务堆积以便可以测试服务器的异步处理性能。当处理业务请求所指定的业务时,记录所处理业务的业务数量和处理时间,根据业务数量和处理时间计算单位时间的业务处理量,将业务处理量作为服务器的处理性能,从而实现了对服务器的异步处理性能的测试,也提高了性能测试的准确性。
附图说明
图1为一个实施例中异步接口的性能测试方法的应用场景图;
图2为一个实施例中异步接口的性能测试方法的流程示意图;
图3为一个实施例中异步接口的性能测试装置的结构框图;
图4为另一个实施例中异步接口的性能测试装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的异步接口的性能测试方法,可以应用于如图1所示的应用环境中。其中,测试终端102通过数据线或网络与服务器104通过网络进行通信。测试终端102向服务器104集中发送多个业务请求,服务器104接收到业务请求后,将接收的业务请求置于任务队列中,并按照配置的线程依次对队列中各业务请求所指定的业务进行处理,记录所处理业务的业务数量和处理时间,根据业务数量和处理时间计算单位时间的业务处理量。测试终端102将业务处理量作为服务器的处理性能。其中,测试终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种异步接口的性能测试方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S202,接收由测试终端发送的、用于性能测试的多个业务请求。
其中,业务请求可以是基于HTTP协议的请求,具体可以包括但不限于贷款业务请求和贷款资信请求。贷款资信请求用于在用户向银行进行贷款时,查询用户的资信信息,资信信息包括用户的个人征信信息。资信指的是用户从事民事活动的能力和社会对其所作的综合评价。
本发明实施例中,业务请求的特点是:服务器在接收到测试终端发送的业务请求后,并不会立即响应,而是将请求加入任务队列进行异步处理。
具体地,服务器接收由测试终端集中发送的、用于性能测试的多个业务请求。
S204,将接收的业务请求置于任务队列中,并按照配置的线程依次对队列中各业务请求所指定的业务进行处理。
其中,任务队列中可以排列多个业务请求,按照先进先出的方式对任务队列的任务请求进行处理。一个业务请求可以对应一个业务。
在一个实施例中,服务器按照接收的时间顺序将业务请求置于任务队列中,或则按照随机方式将业务请求置于任务队列中。
在一个实施例中,服务器在接收到任务请求时,根据任务请求的数量配置用于处理业务请求所指定业务的线程,然后根据配置的线程按照先进先出的方式对队列中各业务请求所指定的业务进行处理。
在一个实施例中,当业务请求为贷款业务请求时,按照配置的线程依次对队列中各业务请求所指定的业务进行处理包括:获取与贷款业务请求对应的用户信息;根据用户信息从数据库中查找与用户信息匹配的资信信息;根据资信信息判断用户是否满足预设的贷款条件。
S206,记录所处理业务的第一业务数量和对应的第一处理时间。
在一个实施例中,在处理业务请求对应的业务时,服务器均会记录处理业务的第一业务数量,将记录的第一业务数量与业务请求的数量进行对比,确定业务请求是否被处理完成。当第一业务数量小于业务请求的数量时,表示所有的业务请求未被处理完成。当第一业务数量等于业务请求的数量时,表示所有的业务请求被处理完成。
S208,根据第一业务数量和第一处理时间计算单位时间的第一业务处理量。
在一个实施例中,服务器可以将所有的第一业务数量进行相加,得到业务总量;服务器将所有的第一处理时间进行相加,得到时间总量。服务器将业务总量除以时间总量便可得到单位时间的第一业务处理量。
在另一个实施例中,服务器还可以分别将各第一业务数量除以对应的第一处理时间,然后将得到的结果求平均值,将平均值作为单位时间的第一业务处理量。
S210,将第一业务处理量发送至测试终端,以使测试终端将第一业务处理量作为服务器的处理性能。
在一个实施例中,服务器也可以将第一业务数量和第一处理时间发送至测试终端,以便测试终端根据第一业务数量以及第一处理时间,计算单位时间内的第一业务处理量,以单位时间内的第一业务处理量来衡量服务器的处理性能。
作为一个示例,服务器接收到测试终端发送的N个业务请求,并将该N个业务请求置于任务队列中,然后分别按照该N个业务请求对对应的业务进行处理,如业务请求为贷款资信请求,对应的业务为获取贷款资信信息。当服务器处理了业务请求对应的M个业务,并记录处理M个业务的总时间T(其中,T=T1+T2+...+Tm)。当M小于N时,表示服务器未处理完所有业务请求所指定的业务。当M等于N时,表示服务器处理完所有业务请求所指定的业务。若服务器将第一业务数量和第一处理时间发送至测试终端,那么,测试终端根据M个业务以及处理时间T,计算单位时间内服务器处理的业务处理量S=M/T,根据该业务处理量S来衡量服务器的处理性能。
在一个实施例中,当系统中的服务器为多个时,若服务器将第一业务数量和第一处理时间发送至测试终端,那么,测试终端可以以该服务器为参考,依据第一业务数量和第一处理时间计算服务器的处理性能,根据处理性能估算系统中的各服务器并行处理的性能。
在一个实施例中,服务器在完成所有业务请求所指定的业务之后,为了更加准确的估算出系统的处理性能,可以按照预设增量重新配置用于处理业务请求所指定业务的线程;每次重新配置线程后,执行接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到工作状态之前所对应的线程数确定为最佳线程数;记录在最佳线程数时所处理的第二业务数量和对应的第二处理时间;根据第二业务数量和第二处理时间计算单位时间的第二业务处理量;将第二业务处理量发送至测试终端,以使测试终端将第二业务处理量作为服务器的最佳处理性能。
在一个实施例中,发送至测试终端的第二业务处理量,还用于将最佳线程数作为业务系统中各其它服务器处理业务时的最佳线程数,并将第二业务处理量作为业务系统中各其它服务器的最佳处理性能。
在一个实施例中,服务器在完成所有的业务请求之后,重新对处理业务请求所指定业务的线程进行配置,如增加线程数或减少线程数。每一次重新配置线程后,服务器重新接收由测试终端发送的、用于性能测试的多个业务请求,将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理。服务器在处理业务请求所指定的业务过程中,根据服务器本身的工作状态确定最佳的线程数。测试终端以配置最佳线程数的服务器为参考,以由第二业务数量和第二处理时间所计算的处理性能,估算系统中的服务器并行处理性能。该实施例不仅可以提高当前测试的服务器处理性能的准确性,还可以提高估算多个服务器处理性能的准确性。
在一个实施例中,处理各业务请求所指定的业务时服务器的工作状态满足预设条件包括:在按照预设增量重新所配置的线程处理对应业务的过程中,当出现以下任一种情况,则确定服务器的工作状态满足预设条件:处理业务请求所指定的业务总处理时间大于第一预设时间;处理其它业务的总处理时间大于第二预设时间;服务器出现卡顿。
例如,服务器在按照预设增量重新所配置的线程处理对应业务的过程中,若出现业务处理的时间明显变长,或服务器其它业务的处理时间明显变长,或服务器出现卡顿等变化时,表示在本次增加线程数之前,服务器处理业务的能力较好,则最佳线程数可以在增加线程数之前的那些数值中选取。然后,结合各业务的处理时间来确定服务器的最佳线程数。需要说明的是,最佳线程数可以某一个值,也可以是一个取值范围中的任一值。
例如,服务器在最初处理N个业务请求时,可能以保守数量的线程进行业务处理。然后,服务器可以不断增加(或减少)线程数,当增加到N+J个线程时,服务器的出现卡顿问题时,表示最佳线程数在N至N+J-1之间。然后,可以结合各业务处理的时间来确定服务器的最佳线程数,若线程数为N+I时,各业务处理的时间短且服务器不出现卡顿,则最佳线程数即为N+I。
在一个实施例中,该方法还包括:将最佳线程数,以及在最佳线程数时服务器对应的业务数量与处理时间保存于日志列表中;当接收到多个业务请求时,从日志列表中查找最佳线程数;按照最佳线程数配置用于处理业务的线程。
在一个实施例中,服务器将每次记录业务的处理时间和业务数量保存于日志列表中,此外还可以保持对应的线程数。服务器以后在处理与该业务数量相同、且与上一次业务请求的类型相似或相同的业务请求时,可以参考所保存的线程数来配置线程,以对本次业务请求所指定业务进行处理。
上述实施例中,由于异步接口性能取决于服务器的实际处理能力,测试终端向服务器集中发送多个业务请求,使得业务请求在服务器的任务队列里造成任务堆积以便可以测试服务器的异步处理性能。当处理业务请求所指定的业务时,记录所处理业务的业务数量和处理时间,根据业务数量和处理时间计算单位时间的业务处理量,将业务处理量作为服务器的处理性能,从而实现了对服务器的异步处理性能的测试,也提高了性能测试的准确性。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种异步接口的性能测试装置,包括:业务请求接收模块302、第一处理模块304、记录模块306、计算模块308和发送模块310,其中:
业务请求接收模块302,用于接收由测试终端发送的、用于性能测试的多个业务请求;
第一处理模块304,用于将接收的业务请求置于任务队列中,并按照配置的线程依次对队列中各业务请求所指定的业务进行处理;
记录模块306,用于记录所处理业务的第一业务数量和对应的第一处理时间;
计算模块308,用于根据第一业务数量和第一处理时间计算单位时间的第一业务处理量;
发送模块310,用于将第一业务处理量发送至测试终端,以使测试终端将第一业务处理量作为服务器的处理性能。
在一个实施例中,如图4所示,该装置还包括:线程配置模块312和第二处理模块314,其中:
线程配置模块312,用于按照预设增量重新配置用于处理业务请求所指定业务的线程;
第二处理模块314,用于每次重新配置线程后,执行接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到工作状态之前所对应的线程数确定为最佳线程数;
记录模块306还用于记录在最佳线程数时所处理的第二业务数量和对应的第二处理时间;
计算模块308还用于根据第二业务数量和第二处理时间计算单位时间的第二业务处理量;
发送模块310还用于将第二业务处理量发送至测试终端,以使测试终端将第二业务处理量作为服务器的最佳处理性能。
在一个实施例中,发送至测试终端的第二业务处理量,还用于将最佳线程数作为业务系统中各其它服务器处理业务时的最佳线程数,并将第二业务处理量作为业务系统中各其它服务器的最佳处理性能。
在一个实施例中,第二处理模块314还用于在在按照预设增量重新所配置的线程处理对应业务的过程中,当出现以下任一种情况,则确定服务器的工作状态满足预设条件:处理业务请求所指定的业务总处理时间大于第一预设时间;处理其它业务的总处理时间大于第二预设时间;服务器出现卡顿。
在一个实施例中,业务请求包括贷款业务请求;第一处理模块304还用于获取与贷款业务请求对应的用户信息;根据用户信息从数据库中查找与用户信息匹配的资信信息;根据资信信息判断用户是否满足预设的贷款条件。
在一个实施例中,如图4所示,该装置还包括:保存模块316和最佳线程数查找模块318,其中:
保存模块316,用于将最佳线程数,以及在最佳线程数时服务器对应的业务数量与处理时间保存于日志列表中;
最佳线程数查找模块318,用于当接收到多个业务请求时,从日志列表中查找最佳线程数;
线程配置模块312还用于按照最佳线程数配置用于处理业务的线程。
上述实施例中,由于异步接口性能取决于服务器的实际处理能力,测试终端向服务器集中发送多个业务请求,使得业务请求在服务器的任务队列里造成任务堆积以便可以测试服务器的异步处理性能。当处理业务请求所指定的业务时,记录所处理业务的业务数量和处理时间,根据业务数量和处理时间计算单位时间的业务处理量,将业务处理量作为服务器的处理性能,从而实现了对服务器的异步处理性能的测试,也提高了性能测试的准确性。
关于异步接口的性能测试装置的具体限定可以参见上文中对于异步接口的性能测试方法的限定,在此不再赘述。上述异步接口的性能测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储业务请求和最佳线程数等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种异步接口的性能测试方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收由测试终端发送的、用于性能测试的多个业务请求;将接收的业务请求置于任务队列中,并按照配置的线程依次对队列中各业务请求所指定的业务进行处理;记录所处理业务的第一业务数量和对应的第一处理时间;根据第一业务数量和第一处理时间计算单位时间的第一业务处理量;将第一业务处理量发送至测试终端,以使测试终端将第一业务处理量作为服务器的处理性能。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:按照预设增量重新配置用于处理业务请求所指定业务的线程;每次重新配置线程后,执行接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到工作状态之前所对应的线程数确定为最佳线程数;记录在最佳线程数时所处理的第二业务数量和对应的第二处理时间;根据第二业务数量和第二处理时间计算单位时间的第二业务处理量;将第二业务处理量发送至测试终端,以使测试终端将第二业务处理量作为服务器的最佳处理性能。
在一个实施例中,发送至测试终端的第二业务处理量,还用于将最佳线程数作为业务系统中各其它服务器处理业务时的最佳线程数,并将第二业务处理量作为业务系统中各其它服务器的最佳处理性能。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在按照预设增量重新所配置的线程处理对应业务的过程中,当出现以下任一种情况,则确定服务器的工作状态满足预设条件:处理业务请求所指定的业务总处理时间大于第一预设时间;处理其它业务的总处理时间大于第二预设时间;服务器出现卡顿。
在一个实施例中,业务请求包括贷款业务请求;处理器执行计算机程序时还实现以下步骤:获取与贷款业务请求对应的用户信息;根据用户信息从数据库中查找与用户信息匹配的资信信息;根据资信信息判断用户是否满足预设的贷款条件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将最佳线程数,以及在最佳线程数时服务器对应的业务数量与处理时间保存于日志列表中;当接收到多个业务请求时,从日志列表中查找最佳线程数;按照最佳线程数配置用于处理业务的线程。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收由测试终端发送的、用于性能测试的多个业务请求;将接收的业务请求置于任务队列中,并按照配置的线程依次对队列中各业务请求所指定的业务进行处理;记录所处理业务的第一业务数量和对应的第一处理时间;根据第一业务数量和第一处理时间计算单位时间的第一业务处理量;将第一业务处理量发送至测试终端,以使测试终端将第一业务处理量作为服务器的处理性能。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:按照预设增量重新配置用于处理业务请求所指定业务的线程;每次重新配置线程后,执行接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到工作状态之前所对应的线程数确定为最佳线程数;记录在最佳线程数时所处理的第二业务数量和对应的第二处理时间;根据第二业务数量和第二处理时间计算单位时间的第二业务处理量;将第二业务处理量发送至测试终端,以使测试终端将第二业务处理量作为服务器的最佳处理性能。
在一个实施例中,发送至测试终端的第二业务处理量,还用于将最佳线程数作为业务系统中各其它服务器处理业务时的最佳线程数,并将第二业务处理量作为业务系统中各其它服务器的最佳处理性能。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在按照预设增量重新所配置的线程处理对应业务的过程中,当出现以下任一种情况,则确定服务器的工作状态满足预设条件:处理业务请求所指定的业务总处理时间大于第一预设时间;处理其它业务的总处理时间大于第二预设时间;服务器出现卡顿。
在一个实施例中,业务请求包括贷款业务请求;计算机程序被处理器执行时还实现以下步骤:获取与贷款业务请求对应的用户信息;根据用户信息从数据库中查找与用户信息匹配的资信信息;根据资信信息判断用户是否满足预设的贷款条件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将最佳线程数,以及在最佳线程数时服务器对应的业务数量与处理时间保存于日志列表中;当接收到多个业务请求时,从日志列表中查找最佳线程数;按照最佳线程数配置用于处理业务的线程。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
将最佳线程数,以及在所述最佳线程数时所述服务器对应的业务数量与处理时间保存于日志列表中;
当接收到所述多个业务请求时,从所述日志列表中查找所述最佳线程数;
按照所述最佳线程数配置用于处理业务的线程。
6.一种异步接口的性能测试装置,其特征在于,所述装置包括:
业务请求接收模块,用于接收由测试终端发送的、用于性能测试的多个业务请求;
线程配置模块,用于根据所述业务请求的数量配置用于处理所述业务请求所指定业务的线程;或者,当所述业务请求的数量和类型分别与日志列表中保持的业务数量和类型相同时,从所述日志列表中获取对应的线程数,按照所述线程数配置用于处理所述业务请求所指定业务的线程;
第一处理模块,用于将接收的业务请求置于任务队列中,并按照配置的线程依次对所述队列中各业务请求所指定的业务进行处理;
记录模块,用于记录所处理业务的第一业务数量和对应的第一处理时间;
计算模块,用于根据所述第一业务数量和第一处理时间计算单位时间的第一业务处理量;
发送模块,用于将所述第一业务处理量发送至所述测试终端,以使所述测试终端将所述第一业务处理量作为服务器的处理性能。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
线程配置模块,用于按照预设增量重新配置用于处理所述业务请求所指定业务的线程;
第二处理模块,用于每次重新配置线程后,执行所述接收由测试终端发送的、用于性能测试的多个业务请求的步骤,直至当处理各业务请求所指定的业务过程中服务器的工作状态满足预设条件时,将达到所述工作状态之前所对应的线程数确定为最佳线程数;
所述记录模块还用于记录在所述最佳线程数时所处理的第二业务数量和对应的第二处理时间;
所述计算模块还用于根据所述第二业务数量和第二处理时间计算单位时间的第二业务处理量;
所述发送模块还用于将所述第二业务处理量发送至所述测试终端,以使所述测试终端将所述第二业务处理量作为所述服务器的最佳处理性能。
8.根据权利要求7所述的装置,其特征在于,所述第二处理模块还用于在按照预设增量重新所配置的线程处理对应业务的过程中,当出现以下任一种情况,则确定所述服务器的工作状态满足预设条件:处理所述业务请求所指定的业务总处理时间大于第一预设时间;处理其它业务的总处理时间大于第二预设时间;所述服务器出现卡顿。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811545334.1A CN109828892B (zh) | 2018-12-17 | 2018-12-17 | 异步接口的性能测试方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811545334.1A CN109828892B (zh) | 2018-12-17 | 2018-12-17 | 异步接口的性能测试方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109828892A CN109828892A (zh) | 2019-05-31 |
CN109828892B true CN109828892B (zh) | 2023-02-28 |
Family
ID=66859002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811545334.1A Active CN109828892B (zh) | 2018-12-17 | 2018-12-17 | 异步接口的性能测试方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109828892B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111258765B (zh) * | 2020-01-17 | 2023-08-22 | 深圳乐信软件技术有限公司 | 一种负载均衡方法、装置、计算设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102411515A (zh) * | 2011-07-29 | 2012-04-11 | 国网信息通信有限公司 | 一种服务器容量估算的方法和系统 |
CN102541659A (zh) * | 2011-12-30 | 2012-07-04 | 重庆新媒农信科技有限公司 | 一种服务器业务请求处理方法和装置 |
CN105930220A (zh) * | 2016-04-22 | 2016-09-07 | 乐视控股(北京)有限公司 | 业务系统性能测试方法和装置 |
CN106470133A (zh) * | 2015-08-20 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 系统压力测试方法及装置 |
CN107360117A (zh) * | 2016-05-09 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 数据处理的方法、装置及系统 |
CN108449237A (zh) * | 2018-05-23 | 2018-08-24 | 平安壹钱包电子商务有限公司 | 网络性能监测方法、装置、计算机设备和存储介质 |
CN108965380A (zh) * | 2018-05-31 | 2018-12-07 | 平安医疗科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
CN108958992A (zh) * | 2017-05-18 | 2018-12-07 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9910756B2 (en) * | 2015-09-03 | 2018-03-06 | International Business Machines Corporation | Response-time baselining and performance testing capability within a software product |
-
2018
- 2018-12-17 CN CN201811545334.1A patent/CN109828892B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102411515A (zh) * | 2011-07-29 | 2012-04-11 | 国网信息通信有限公司 | 一种服务器容量估算的方法和系统 |
CN102541659A (zh) * | 2011-12-30 | 2012-07-04 | 重庆新媒农信科技有限公司 | 一种服务器业务请求处理方法和装置 |
CN106470133A (zh) * | 2015-08-20 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 系统压力测试方法及装置 |
CN105930220A (zh) * | 2016-04-22 | 2016-09-07 | 乐视控股(北京)有限公司 | 业务系统性能测试方法和装置 |
CN107360117A (zh) * | 2016-05-09 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 数据处理的方法、装置及系统 |
CN108958992A (zh) * | 2017-05-18 | 2018-12-07 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN108449237A (zh) * | 2018-05-23 | 2018-08-24 | 平安壹钱包电子商务有限公司 | 网络性能监测方法、装置、计算机设备和存储介质 |
CN108965380A (zh) * | 2018-05-31 | 2018-12-07 | 平安医疗科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109828892A (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108933993B (zh) | 短信缓存队列选择方法、装置、计算机设备和存储介质 | |
CN110445637B (zh) | 事件监控方法、系统、计算机设备和存储介质 | |
CN109597685B (zh) | 任务分配方法、装置和服务器 | |
CN109039937B (zh) | 动态限流方法、装置、计算机设备和存储介质 | |
CN112689007B (zh) | 资源分配方法、装置、计算机设备和存储介质 | |
CN108845881A (zh) | 服务器容量动态调整的方法及装置 | |
CN108834086B (zh) | 短信发送的方法、装置、计算机设备和存储介质 | |
CN108845869B (zh) | 并发请求控制方法、装置、计算机设备和存储介质 | |
CN110808877A (zh) | 基于接口响应时长的统计分析方法、装置及计算机设备 | |
CN110689228A (zh) | 试验业务排程方法、装置、计算机设备和存储介质 | |
CN115269108A (zh) | 一种数据处理方法、装置及设备 | |
CN110674149B (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN109828892B (zh) | 异步接口的性能测试方法、装置、计算机设备和存储介质 | |
CN109213965B (zh) | 一种系统容量预测方法、计算机可读存储介质及终端设备 | |
CN110084476B (zh) | 案件调整方法、装置、计算机设备和存储介质 | |
CN112051771A (zh) | 多云数据采集方法、装置、计算机设备和存储介质 | |
CN108418730B (zh) | 网络流量测试方法、装置、设备以及计算机可读存储介质 | |
CN112346880A (zh) | 接口调用方法、装置、计算机可读存储介质和计算机设备 | |
CN111159009A (zh) | 一种日志服务系统的压力测试方法及装置 | |
CN112303811B (zh) | 空调运行数据的处理方法、装置、系统、空调和存储介质 | |
CN109471852A (zh) | 医疗数据库建立方法、装置、计算机设备和存储介质 | |
CN114281474A (zh) | 一种资源调节方法及装置 | |
CN110969430B (zh) | 可疑用户的识别方法、装置、计算机设备和存储介质 | |
CN110795255B (zh) | 数据批量值调整方法、装置、可读存储介质和设备 | |
CN109284260B (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 |