CN101540701B - 一种服务器测试系统以及测试方法和装置 - Google Patents
一种服务器测试系统以及测试方法和装置 Download PDFInfo
- Publication number
- CN101540701B CN101540701B CN2008101021692A CN200810102169A CN101540701B CN 101540701 B CN101540701 B CN 101540701B CN 2008101021692 A CN2008101021692 A CN 2008101021692A CN 200810102169 A CN200810102169 A CN 200810102169A CN 101540701 B CN101540701 B CN 101540701B
- Authority
- CN
- China
- Prior art keywords
- transaction
- transaction request
- frequency
- server
- tested server
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及通信领域,尤其涉及测试电信行业服务器综合性能的技术。一种服务器测试系统,包括:电信用户模拟装置,用于模拟电信用户发起交易请求,并接收被测服务器返回的交易结果;测试控制装置,用于控制电信用户模拟装置的交易请求发起频率,并根据不同交易请求发起频率下的各次交易请求发起时间以及交易结果接收时间,确定被测服务器满足响应延迟要求时的最大交易请求发起频率,从而确定被测服务器的性能。本发明还提供了一种服务器测试方法及装置。由于通过模拟电信用户对被测服务器发起不同频率的交易请求,获得被测服务器在满足响应延迟要求的前提下可以处理的最大交易请求发起频率,该测试结果能更准确的反映电信行业服务器的综合性能。
Description
技术领域
本发明涉及通信领域,尤其涉及测试电信行业服务器综合性能的技术。
背景技术
随看电信业务的不断增长,IT(Information Technology,信息技术)设备对电信运营的支撑越来越重要,其中小型机服务器承担了非常关键的业务。为了评价电信行业服务器的性能,需要对电信行业的一些相关服务器的性能进行测试。
目前,国际、国内还没有针对电信行业服务器性能的测试标准。在国际上对通用服务器性能的测试标准主要采用TPC(Transaction ProcessingPerformance Council,事务处理性能委员会)制定的在线事务处理测试标准TPC-C。
TPC-C标准的测试模型主要是基于批发商的仓储管理系统,测试被测服务器在订货交易请求、发货交易请求以及查询仓库库存状况请求等有关仓储管理的各种请求下的响应性能,从而由此确定服务器的性能。
虽然采用TPC-C标准测试模型也可以在一定程度上反映电信行业服务器的性能,但是由于电信行业的应用系统、业务与仓储管理系统、业务存在较大差别,两者对服务器的资源占用情况存在较大差别,因此,在实际中发现有可能采用TPC-C标准的测试模型测试的不符合要求的服务器,而应用在电信行业却表现出较佳性能;而采用TPC-C标准的测试模型测试的符合要求的服务器,其在电信行业中应用时却不能达到要求。
所以TPC-C指标往往不能够真实反映在电信运营中的服务器性能;同时TPC-C测试成本很大,测试结果审核往往需要半年以上。
所以采用现有技术的测试方法来测试电信行业服务器所得到的测试结果不能准确地反映电信行业服务器的性能,而且这种测试方法成本高、周期长。
发明内容
本发明实施例提供了一种服务器测试系统,用以提高测试电信行业服务器综合性能的准确性,降低测试成本,缩短测试周期。
本发明实施例提供了一种服务器测试方法和装置,用以提高测试电信行业服务器综合性能的准确性,降低测试成本,缩短测试周期。
一种服务器测试系统,包括:
电信用户模拟装置,用于模拟电信用户向被测服务器发起交易请求,并接收被测服务器返回的交易结果,其中,所述交易请求包括不同类型的多种交易请求;
测试控制装置,用于控制所述电信用户模拟装置的交易请求发起频率,并根据不同交易请求发起频率下所述电信用户模拟装置发起的各次交易请求发起时间以及对应的交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时的最大交易请求发起频率,并根据所述最大交易请求发起频率确定被测服务器的性能,其中,确定所述被测服务器在其中一个交易请求发起频率下满足交易结果响应延迟要求包括:在该交易请求发起频率下发起的所有交易请求中,对于每种类型的交易,分别确定被测服务器对该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易总数的第一比例,与该种类型交易的总交易数占所有交易请求次数的第二比例相乘得到的第三比例,当根据每一种交易类型确定的第三比例之和大于第二阈值时,确定所述被测服务器在该交易请求发起频率下满足交易结果响应延迟要求。
较佳的,所述电信用户模拟装置包括多个服务器,用于模拟电信用户向被测服务器发起相同或不同的交易请求,并接收被测服务器返回的交易结果。
所述系统还包括:至少一个中间件/前端应用装置,用于接收所述电信用户模拟装置中的各服务器发起的交易请求并转发给被测服务器,以及将所述被测服务器返回的交易结果分别转发给各发起交易请求的服务器。
进一步,所述测试控制装置还用于获得不同交易请求发起频率下所述被测服务器的资源性能指标值,并根据所述资源性能指标调整被测服务器的存储设备的存储性能。
一种服务器测试方法,包括:
模拟电信用户以不同的交易请求发起频率向被测服务器发起交易请求,其中,所述交易请求包括不同类型的多种交易请求;
根据不同交易请求发起频率下,各次交易请求发起时间以及对应的交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时的最大交易请求发起频率,其中,确定所述被测服务器在其中一个交易请求发起频率下满足交易结果响应延迟要求包括:在该交易请求发起频率下发起的所有交易请求中,对于每种类型的交易,分别确定被测服务器对该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易总数的第一比例,与该种类型交易的总交易数占所有交易请求次数的第二比例相乘得到的第三比例,当根据每一种交易类型确定的第三比例之和大于第二阈值时,确定所述被测服务器在该交易请求发起频率下满足交易结果响应延迟要求;
根据所述最大交易请求发起频率确定被测服务器的性能。
一种服务器测试控制装置,包括:
测试控制模块,用于向模拟装置控制模块发送交易请求发起频率;
模拟装置控制模块,用于根据接收的交易请求发起频率控制电信用户模拟装置发起相应频率的交易请求,其中,所述交易请求包括不同类型的多种交易请求;
交易数据获得模块,用于获得各交易请求发起频率下所述电信用户模拟装置的交易请求发起时间以及从被测服务器返回的交易结果的接收时间;
测试控制模块根据所述各交易请求发起频率下的交易请求发起时间以及交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时最大交易请求发起频率,其中,确定所述被测服务器在其中一个交易请求发起频率下满足交易结果响应延迟要求包括:在该交易请求发起频率下发起的所有交易请求中,对于每种类型的交易,分别确定被测服务器对该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易总数的第一比例,与该种类型交易的总交易数占所有交易请求次数的第二比例相乘得到的第三比例,当根据每一种交易类型确定的第三比例之和大于第二阈值时,确定所述被测服务器在该交易请求发起频率下满足交易结果响应延迟要求。
进一步,所述服务器测试控制装置还包括:资源信息获得模块、辅助测试数据生成模块;
所述资源信息获得模块,根据所述测试控制模块的控制命令获取所述被测服务器的各项资源指标值;
辅助测试数据生成模块,用于根据从所述测试控制模块获得的交易请求发起频率以及从所述资源信息获得模块获得的各项资源指标生成各交易请求发起频率下被测服务器的资源测试报告;
所述辅助测试数据生成模块还用于根据各交易请求发起频率下被测服务器的资源性能指标值确定被测服务器的存储设备的存储性能是否满足要求。
本发明实施例由于通过模拟电信用户对被测服务器发起不同频率的交易请求,从而测试被测服务器的处理极限,获得被测服务器在满足响应延迟要求的前提下可以处理的最大交易请求发起频率,该测试结果能更准确的反映电信行业服务器的综合性能。而且由于不需要再进行TPC-C测试,节约了测试成本,缩短了测试周期。
附图说明
图1a为本发明实施例的服务器测试系统示意图;
图1b为本发明实施例的另一种服务器测试系统示意图;
图1c为本发明实施例的服务器测试结果示意图;
图2a为本发明实施例一的服务器测试方法流程图;
图2b为本发明实施例一的服务器测试方法具体实施流程图;
图3为本发明实施例一的服务器测试控制装置结构框图;
图4为本发明实施例二的服务器测试方法具体实施流程图;
图5为本发明实施例二的服务器测试控制装置结构框图。
具体实施方式
本发明实施例通过模拟大量电信用户对被测电信服务器被测服务器发起交易请求,并不断增加单位时间内发起交易请求的次数,亦即交易请求的频率,从而测试被测服务器的处理极限,获得被测服务器在满足响应延迟要求的前提下可以处理的最大交易请求发起频率,该最大交易请求发起频率能更准确的反映电信行业服务器的综合性能。除了测试出被测服务器的可以处理的最大交易请求发起频率,还可以同时测试被测服务器在不同测试条件下的各项资源指标,从而提供更为丰富的测试结果数据以供参考。
本发明实施例提供了一种服务器测试系统,如图1a所示,包括:电信用户模拟装置101、测试控制装置103。
电信用户模拟装置101,用于模拟电信用户向被测服务器104发起交易请求,记录交易请求发起时间;并接收被测服务器104返回的交易结果,记录交易结果接收时间。
测试控制装置103,用于控制所述电信用户模拟装置101发起交易请求的频率,并根据获得的各交易请求发起频率下所述电信用户模拟装置101的交易请求发起时间以及交易结果接收时间,确定所述被测服务器104满足交易结果响应延迟要求时最大交易请求发起频率。较佳的一种具体实现方法可以是,测试控制装置103控制电信用户模拟装置101以一初始频率发起交易请 求,判断被测服务器104在该交易请求发起频率下是否满足响应延迟要求;如果是,记录当前的交易请求发起频率,并继续增加交易请求发起频率,继续判断当前交易请求发起频率下被测服务器104是否满足响应延迟要求;如果否,则将记录的最大的交易请求发起频率作为满足响应延迟要求的最大交易请求发起频率。
被测服务器104接收处理电信用户模拟装置101的交易请求,并将交易结果返回给电信用户模拟装置101。为了保证被测服务器104的用户数据存储空间足够大,一般在被测服务器104外再连接一个存储设备105,存储设备105中具有存储设备盘阵以保证被测服务器104的用户交易数据存储空间。
被测服务器对交易请求的响应延迟指的是从电信用户模拟装置101发起业务交易请求到电信用户模拟装置101收到交易结果的时间延迟。某个交易请求的响应延迟为J=S-R;其中,S为电信用户模拟装置101发起该交易请求的时间,R为电信用户模拟装置101获得交易结果的时间。
被测服务器在满足响应延迟要求的前提下所能处理的最大频率的交易请求体现了被测服务器的综合性能。
进一步,在实际的测试应用中,由于可能需要模拟大量的用户进行业务请求,例如500万用户,一台前端服务器可能无法同时模拟这么大量的电信用户,则电信用户模拟装置101可以包括多个前端服务器,用以模拟大量电信用户同时进行业务请求。以及所述服务器测试系统,如图1b所示还包括:中间件/前端应用装置102。
中间件/前端应用装置102对电信用户模拟装置101的交易请求进行预处理,即通过应用和交易中间件对交易请求进行集中监控、管理和调度后将交易请求发送给被测服务器104。具体的,在中间件/前端应用装置102中对于每种类型的交易请求都存在一个对应的接收消息队列用于存放该类型的交易请求,中间件/前端应用装置102将不同类型的交易请求分别放入对应的接收消息队列中;被测服务器运行不同的进程来处理不同类型的交易请求,当某 个类型的交易请求的处理进程已经处理完一个交易请求后处于空闲状态,被测服务器则从相应的接收消息队列中取出下一个交易请求交由进程进行处理,并返回交易结果给中间件/前端应用装置102中的对应的发送消息队列——同样,每种类型的交易请求对应于一个发送消息队列用于保存该类型交易请求的交易结果。这样就实现了对电信用户模拟装置101发起的交易请求、以及被测服务器104处理的交易结果进行集中监控、管理和调度。
所述中间件/前端应用装置102可以包括一个或多个中间件/前端应用服务器,这些中间件/前端应用服务器之间相互通信,调配分担电信用户模拟装置101发送的业务请求,从而可以对大量的业务请求进行及时的前端的预处理。
上述存储设备105中的用户交易数据既可以是现实中的真实用户的交易数据,也可以是通过程序自动生成的用于测试的用户交易数据。本领域技术人员可以根据具体情况选用用户交易数据,并决定用户交易数据大小,比如可以保存500万用户的交易数据用以测试;或者通过程序自动生成500万用户的交易数据:由于程序生成的用户交易数据往往具有一定规律性,为了使得测试数据更符合现实中实际用户的情况,可以将程序生成的用户交易数据进行分组。例如,对于根据用户手机号码后4位进行分组,每100个一组,比如手机号码后4位从0000到0100一组,0101到0200一组,依次类推,9901-9999为一组;对一组用户交易数据信息进行随机化,比如对一组数据按照用户姓名或者开户时间排序,以达到将用户交易数据随机安排的效果,从而使得用于测试的用户交易数据更符合实际中的情况。
进一步,除了测试在满足响应延迟要求的前提下所能处理的最大交易请求发起频率,还可以测试被测服务器在不同的测试条件下各项资源指标:
在不同的测试条件下,即电信用户模拟装置101发起的不同交易请求发起频率下,测试控制装置103通过获得被测服务器的日志记录等获得各项资源指标,如CPU(Central Processing Unit,中央处理器器)占用率、和/或内存占用大小、和/或CPU的WaitIO值等,并结合不同交易请求发起频率下的 相关交易数据,如交易请求发起频率、交易响应延迟时间等生成各交易请求发起频率下被测服务器的资源测试报告,作为反映该被测服务器的综合性能的补充。一个具体的资源测试报告报告如图1c所示。
此外还可以测试存储设备105的存储性能:根据各交易请求发起频率下被测服务器的资源测试报告中记载的各交易请求发起频率下CPU占用率以及WaitIO值判断存储设备105的存储性能。具体的,在确定交易请求发起频率增加时,如果CPU占用率没有明显提高(例如CPU占用率的增幅小于设定阈值a),但是CPU的WaitIO值明显增大(例如WaitIO值的增幅大于设定阈值b),说明存储设备105存储性能较低不能满足被测服务器处理速度的要求,应该更换存储性能更高的存储设备105;反之,存储设备105的存储性能满足要求。
本领域技术人员可以根据实际情况或者经验决定上述阈值a、b的取值。
测试控制装置103的具体结构以及对整个测试系统的控制流程如下所述:实施例一提供了一种基本的测试方法;实施例二提供了一种更为优化的测试方法,能够加快测试速度,同时又保证测试精度。
实施例一
本发明实施例提供的一种服务器测试方法,流程图如图2a所示,包括如下步骤:
步骤S201:模拟电信用户以不同的交易请求发起频率向被测服务器发起交易请求。
步骤S202:获得各交易请求发起频率下所述电信用户模拟装置记录的交易请求发起时间以及记录的从所述被测服务器返回的交易结果的接收时间。
步骤S203:根据所述各交易请求发起频率下的各次交易请求发起时间以及交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时最大交易请求发起频率。
被测服务器满足响应延迟要求时最大交易请求发起频率反映了被测服务 器的综合性能。
进一步,还可以获得被测服务器在不同交易请求发起频率下各项资源的测试报告:
步骤S204:获得各交易请求发起频率下被测服务器各项资源指标,包括:CPU占用率、和/或内存空间、和/或WaitIO值。
再进一步,还可以根据各交易请求发起频率下的各项资源指标判断被测服务器的存储设备的存储性能是否满足要求:
步骤S205:根据所述各交易请求发起频率下的各项资源指标,确定在交易请求发起频率增加时,如果CPU占用率增幅小于设定阈值a,WaitIO值的增幅大于设定阈值b,则确定所述被测服务器所用存储设备的存储性能不能满足要求;否则满足要求。
实现上述服务器测试方法的一种具体流程,如图2b所示,包括如下具体步骤:
步骤S211:控制电信用户模拟装置以一初始频率n发起交易请求。
例如,控制电信用户模拟装置发起交易请求的频率为500个/秒。具体的控制过程可以是通过脚本或者指令控制电信用户模拟装置模拟用户自动发起交易请求,再通过设置电信用户模拟装置中的单位时间内运行次数的参数,从而实现控制中间件/前端应用装置以一定频率向被测服务器发起交易请求。例如,设置了电信用户模拟装置一秒内自动发起交易请求50次,则电信用户模拟装置将以50次/秒的频率向被测服务器发起交易请求。通过脚本或者指令控制电信用户模拟装置自动发起交易请求的具体方法有多种,为本领域技术人员所熟知,如利用现有agent软件即可实现通过脚本控制电信用户模拟装置自动发起交易请求,此处不再赘述。对于电信用户模拟装置包括多个前端服务器的情况,可以分别控制每个前端服务器发起交易请求的频率,从而达到控制对被测服务器总的发起交易请求的频率。例如,分别控制电信用户模拟装置中的10个前端服务器,其中每个前端服务器在一秒钟内发起10次交易 请求,则电信用户模拟装置总的向被测服务器发起交易请求的频率为一秒钟100次交易请求。
进一步,为了更接近于现实中用户发起请求的场景,电信用户模拟装置模拟发起的交易可以包括多种不同交易,并按现实中交易请求的大概百分比来分配各种交易请求的发起次数百分比。例如常有的交易包括:开户、资费变更、营业缴费、详单查询等。表1中示出了一种具体分配的请求发起次数比例方案。
表1
交易类型 | 请求发起次数比例 |
开户 | 5% |
资费变更 | 15% |
营业缴费 | 50% |
详单查询 | 30% |
合计 | 100% |
交易的相关数据包括:电信用户模拟装置发起交易请求的时间、电信用户模拟装置获得交易结果的时间。
如果电信用户模拟装置发起的交易包括多种不同交易,则交易相关数据还包括:交易类型。
从电信用户模拟装置发起交易请求的时间到电信用户模拟装置获得交易结果的时间,即为被测服务器对交易的响应延迟时间。交易的响应延迟时间应该满足预定的要求,如果响应延迟时间太长会导致用户体验不佳,并说明处理该交易的服务器不能满足要求。
步骤S213:根据获得的各交易相关数据判断被测服务器在当前交易请求发起频率下对交易请求的响应延迟是否满足要求;如果满足要求,则记录该频率并控制电信用户模拟装置增加发起交易请求的频率,执行步骤S214;否则,将记录的最大频率值作为测试结果,停止测试,执行步骤S216。
有多种具体方法根据获得的各交易相关数据判断被测服务器对交易请求的响应延迟是否满足要求。
具体的可以在设定时间T内获得的各交易相关数据确定被测服务器对各交易请求的响应延迟,并在满足响应延迟要求的交易数与总交易数的比值大于设定阈值时,确定电信用户模拟装置发起的交易请求为特定频率时被测服务器对交易请求的响应延迟满足要求。例如,对于电信用户模拟装置发起的一种交易请求一一开户(开户交易一般响应延迟时间要求不能超过6秒),如果在设定时间T内响应延迟时间在6秒内的开户交易占总开户交易的百分比超过设定值(如90%),则认为被测服务器对交易请求的响应延迟满足要求;否则,不满足要求。
如果电信用户模拟装置发起多种不同类型的交易请求,则根据每种交易的响应延迟时间来判定每种交易中满足响应延迟要求的交易数,并计算该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易的总交易数的第一比例。具体的,根据在设定时间T内获得的各种交易中的每个交易的相关数据:交易请求发起时间、交易结果获得时间以及交易类型,可以确定出每种交易满足响应延迟要求的第一比例,再根据该种类型交易的总交易数占该交易请求发起频率下发起的全部交易请求次数的第二比例计算总的满足响应延迟要求的第三比例。当计算的第三比例超过设定阈值时,确定在当前的交易请求发起频率下被测服务器的响应延迟满足要求。具体的,根据交易请求的发起时间、交易结果的接收时间计算出交易的响应延迟时间。根据交易类型确定对该交易的响应延迟的时间要求。如果计算出的交易响应延迟小于对该交易要求的响应延迟时间,则认为该交易的响应延迟满足要求,统计满足响应延迟要求的交易数,得到该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易的总交易数的第一比例,再根据该种类型交易的总交易数占该交易请求发起频率下发起的全部交易请求次数的第二比例计算总的满足响应延迟要求的第三比例。
表2
交易类型 | 响应时间要求 | 交易请求次数百分比 |
开户 | 6 | 5% |
资费变更 | 6 | 15% |
营业缴费 | 3 | 50% |
详单查询 | 30 | 30% |
合计 | 100% |
例如,对于如表2所示的各种不同类型的交易,在设定时间T内根据开户交易的请求时间以及交易结果接收时间,计算出各开户交易的响应延迟时间。假设共有100个开户交易,其中有80个开户交易的响应延迟时间在6秒内,则开户交易的满足响应延迟要求交易百分比为80/100=80%。用同样的方法,可以确定资费变更交易、营业缴费交易等的满足响应延迟要求交易百分比。再根据各项交易配置的发起次数比例计算总的满足响应延迟要求交易百分比。例如,开户交易的满足响应延迟要求交易百分比为A、开户交易次数占总交易次数的比例为u=5%;确定资费变更交易的满足响应延迟要求交易百分比为B、发起资费变更交易次数占总交易次数的比例为v=15%;营业缴费交易的满足响应延迟要求交易百分比为C、发起次数比例为w=50%;详单查询交易的满足响应延迟要求交易百分比为D、发起次数比例为z=30%,则总的满足响应延迟要求交易百分比E如公式1或者2所示:
E=A×u+B×v+C×w+D×z=5%A+15%B+50%C+30%D (1)
其中,i、j为自然数,各种交易的编号为从1到j,i为1到j中的一种交易,Mi为第i种交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易的总交易数的第一比例,Ni为第i种交易的总交易数占该交易请求发起频率下发起的全部交易请求次数的第二比例。
即总的满足响应延迟要求交易百分比为各项交易的满足响应延迟要求交 易百分比与该项交易请求次数占总交易请求次数百分比的乘积之和。
对于其它判断被测服务器对交易请求的响应延迟是否满足要求的方法,本领域技术人员可以根据本发明实施例公开的技术轻而易举的实现,此处不再赘述。
本领域技术人员可以根据实际情况决定设定时间T,以满足有足够的交易数据来客观的反映被测服务器在该测试条件下的状况。比如设T为10分钟或者20分钟。
步骤S214:记录此次测试条件下的交易请求发起频率。
步骤S215:控制电信用户模拟装置增加交易请求发起频率后,继续监测电信用户模拟装置,获得各交易的相关数据,即执行步骤S212。
控制电信用户模拟装置增加发起交易请求的频率,本领域技术人员可以根据实际情况具体决定如何增加发起交易请求的频率。例如可以在原频率的基础上固定增加一步进值,也可以以某种规律加大增加的步进值,或者减小增加的步进值。对于多种交易的情况下,可以针对每种交易增加相同的步进值,也可以增加不同的步进值。当然,在具体实施时,为了简化方案,本领域技术人员一般都是对每种交易增加相同的步进值。一种具体的做法可以是将多种交易按照一定的交易请求比例配制成一套交易请求(如表2所示),当需要增加交易请求发起频率时,则整体增加这一套交易请求的请求频率。本领域技术人员可以有多种方法来具体实现如何增加发起交易请求的频率,此处不再一一列举。
步骤S216:将记录的最大频率作为测试结果,停止测试。
将被测服务器在最大交易请求发起频率的测试条件下满足响应延迟要求的最大交易请求发起频率作为被测服务器综合性能的测试结果,停止测试。
满足响应延迟要求的最大交易请求发起频率值反映了该被测服务器在满足响应延迟要求的前提下最多能同时处理的交易请求个数。满足响应延迟要求的最大交易请求发起频率值越大,则被测服务器最多能同时处理的交易请 求个数就越多;反之,就越少。所以满足响应延迟要求的最大交易请求发起频率值反映了被测服务器的处理速度、存储容量等综合性能。
更优的,除了测试满足响应延迟要求的最大交易请求发起频率外,还可以获得各种测试条件下服务器的各项资源指标。
步骤S217:监测被测服务器各种测试条件下的各项资源指标。
除了获得最终的测试结果一一满足响应延迟要求的最大交易请求发起频率值,还可以监测整个测试过程中不同测试条件下一一即不同交易请求发起频率的情况下,被测服务器的各项资源指标,如CPU占用率、内存占用空间等。
本发明实施例的一种测试服务器装置,如图3所示,包括:模拟装置控制模块301、交易数据获得模块302、测试控制模块303。
测试控制模块303,用于向所述模拟装置控制模块发送不同的交易请求发起频率。
模拟装置控制模块301,用于根据接收的交易请求发起频率控制电信用户模拟装置发起相应频率的交易请求。
交易数据获得模块302,用于获得各交易请求发起频率下各交易的相关数据,包括:所述电信用户模拟装置的交易请求发起时间以及从被测服务器返回的交易结果的接收时间。
测试控制模块303根据所述交易数据获得模块获得的各交易请求发起频率下所述电信用户模拟装置的交易请求发起时间以及交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时最大交易请求发起频率。具体的一种实施可以是,测试控制模块303通过模拟装置控制模块301控制电信用户模拟装置以一初始频率发起交易请求,根据获得的各交易相关数据判断在电信用户模拟装置当前的交易请求发起频率下被测服务器对交易请求的响应延迟是否满足要求;如果满足要求,则记录当前频率,增加发起交易请求的频率,并通过所述模拟装置控制模块301控制电信用户模拟装置的交易 请求发起频率增加一步进值,继续检测被测服务器对交易请求的响应延迟是否满足要求;否则,输出记录的最大交易请求发起频率作为测试结果。
进一步,还可以测试被测服务器在不同的测试条件下各项资源指标,作为该服务器的综合性能的补充。测试服务器装置还可以包括:资源信息获得模块304、辅助测试数据生成模块305。
测试控制模块303还用于在不同测试条件下,也就是不同交易请求发起频率下向资源信息模块304发送获得资源信息的控制命令,并将不同交易请求发起频率下的交易相关数据发送给辅助测试数据生成模块305。
资源信息获得模块304,用于在接收到所述控制命令后,从被测服务器获得被测服务器的各项资源指标,包括:CPU占用率、内存占用大小以及CPU的WaitIO值等。具体获得被测服务器的各项资源指标的方法可以是通过获得服务器的日志记录,根据日志记录得到各项资源指标。
辅助测试数据生成模块305,用于根据不同交易请求发起频率下的交易相关数据以及被测服务器各项资源指标生成测试报告。具体的一种测试报告如图1c所示。
辅助测试数据生成模块305还用于根据不同交易请求发起频率下资源信息获得模块304获得的CPU占用率以及CPU的WaitIO值,确定被测服务器的存储设备的存储性能是否满足要求。具体的,在交易请求发起频率增加时,如果CPU占用率的增幅小于设定阈值a,CPU的WaitIO值的增幅大于设定阈值b,说明存储设备的存储性能较低不能满足被测服务器处理速度的要求。
本发明实施例由于通过模拟电信用户对被测服务器发起交易请求,并不断增加发起的交易请求发起频率,从而测试被测服务器的处理极限,获得被测服务器在满足响应延迟要求的前提下可以处理的最大交易请求发起频率,该测试结果能更准确的反映电信行业服务器的综合性能。而且由于不需要再进行TPC-C测试,节约了测试成本,缩短了测试周期。
实施例二
上述实施例提到如果步进值m取值大,则步进大,测试时间短,精度低;如果m取值小,则步进小,测试时间长,精度高。为了能够加快测试速度,同时又保证测试精度,本发明实施例提供了一种调整步进值的具体服务器测试方法,流程图如图4所示,包括如下步骤:
步骤S401:控制电信用户模拟装置以一初始频率n向被测服务器发起交易请求。
步骤S402:从电信用户模拟装置获得各交易的相关数据。
步骤S403:根据获得的各交易相关数据判断被测服务器在当前交易请求发起频率下对交易请求的响应延迟是否满足要求;如果满足要求,执行步骤S404;否则,执行步骤S406。
步骤S404:记录此次测试条件下的交易请求发起频率。
步骤S405:控制电信用户模拟装置将交易请求发起频率增加步进值m后,继续监测电信用户模拟装置,获得各交易的相关数据,即执行步骤S402。
步骤S406:调整减小步进值m,并判断m是否小于等于设定的步进最小值m_min;如果是,结束测试,执行步骤S407;否则,继续测试,执行步骤S404。
本领域技术人员可以有多种手段来调整减小步进值,例如在原步进值的基础上减10,或者将原步进值除2得到调整的步进值,即m=m÷2;亦即调整的步进为原步进的一半。
步骤S407:结束测试,将记录的最大频率值作为测试结果输出。
由于调整了步进值,既可以快速测试又可以获得较高精度的测试结果。比如按照实施例一中的方法步进值m取值为100,那么在多次测试循环后得到发起交易请求发起频率为900个/秒时,被测服务器的响应延迟满足要求;频率为1000个/秒时,被测服务器不能满足要求,则测试结果为900个/秒。但实际上,被测服务器在980个/秒时仍能满足要求,则实施例一中的方案由于精度不是足够高无法测出更接近于实际情况的结果;如果m取值为10,又 会大大增加循环测试步骤。所以本发明实施例的方案由于可以调整步进值,使得既可以快速测试又能获得较高测试精度。
本发明实施例的一种测试服务器装置,如图5所示,包括:模拟装置控制模块501、交易数据获得模块502、测试控制模块503、步进调整模块504。
测试控制模块503,用于通过所述模拟装置控制模块501控制电信用户模拟装置以一初始频率发起交易请求。
交易数据获得模块502,用于从电信用户模拟装置获得各交易的相关数据。交易的相关数据包括:电信用户模拟装置发起交易请求的时间、电信用户模拟装置获得交易结果的时间。如果电信用户模拟装置发起的交易包括多种不同交易,则交易相关数据还包括:交易类型。
测试控制模块503,用于根据获得的各交易相关数据判断在电信用户模拟装置当前的交易请求发起频率下被测服务器对交易请求的响应延迟是否满足要求;如果满足要求,则记录当前交易请求发起频率,并通过所述模拟装置控制模块501控制电信用户模拟装置的交易请求发起频率增加一步进值;否则,通知步进调整模块504调整步进。
步进调整模块504,用于在收到调整步进通知后,减小步进m,并判断步进m是否小于等于设定的最小步进值m_min。如果是,通知测试控制模块503结束测试;否则,将调整后的步进值m发送给测试控制模块503。
测试控制模块503还用于在收到步进调整模块504发送的步进值m后,通过模拟装置控制模块501控制电信用户模拟装置将交易请求发起频率增加调整后的步进值m。
测试控制模块503还用于在收到步进调整模块504发送的结束测试通知后,停止测试,输出记录的最大交易请求发起频率作为测试结果。
本发明实施例由于通过模拟电信用户对被测服务器发起交易请求,并不断增加交易请求发起频率,从而测试被测服务器的处理极限,获得被测服务器在满足响应延迟要求的前提下可以处理的最大交易请求发起频率,该测试 结果能更准确的反映电信行业服务器的综合性能。而且由于不需要再进行TPC-C测试,节约了测试成本,缩短了测试周期。
本发明实施例的测试方法由于采用调整交易请求的递增步进的方法,所以可以实现较快、精度较高的测试。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,如:ROM/RAM、磁碟、光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种服务器测试系统,其特征在于,包括:
电信用户模拟装置,用于模拟电信用户向被测服务器发起交易请求,并接收被测服务器返回的交易结果,其中,所述交易请求包括不同类型的多种交易请求;
测试控制装置,用于控制所述电信用户模拟装置的交易请求发起频率,并根据不同交易请求发起频率下所述电信用户模拟装置发起的各次交易请求发起时间以及对应的交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时的最大交易请求发起频率,并根据所述最大交易请求发起频率确定被测服务器的性能,其中,确定所述被测服务器在其中一个交易请求发起频率下满足交易结果响应延迟要求包括:在该交易请求发起频率下发起的所有交易请求中,对于每种类型的交易,分别确定被测服务器对该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易总数的第一比例,与该种类型交易的总交易数占所有交易请求次数的第二比例相乘得到的第三比例,当根据每一种交易类型确定的第三比例之和大于第二阈值时,确定所述被测服务器在该交易请求发起频率下满足交易结果响应延迟要求。
2.如权利要求1所述的系统,其特征在于,所述电信用户模拟装置包括多个服务器,用于模拟电信用户向被测服务器发起交易请求,并接收被测服务器返回的交易结果。
3.如权利要求2所述的系统,其特征在于,还包括:
至少一个中间件/前端应用装置,用于接收所述电信用户模拟装置中的各服务器发起的交易请求并转发给被测服务器,以及将所述被测服务器返回的交易结果分别转发给各发起交易请求的服务器。
4.如权利要求1、2或3所述的系统,其特征在于,所述测试控制装置还用于获得不同交易请求发起频率下所述被测服务器的资源性能指标值,并 根据所述资源性能指标调整被测服务器的存储设备的存储性能。
5.一种服务器测试方法,其特征在于,包括:
模拟电信用户以不同的交易请求发起频率向被测服务器发起交易请求,其中,所述交易请求包括不同类型的多种交易请求;
根据不同交易请求发起频率下,各次交易请求发起时间以及对应的交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时的最大交易请求发起频率,其中,确定所述被测服务器在其中一个交易请求发起频率下满足交易结果响应延迟要求包括:在该交易请求发起频率下发起的所有交易请求中,对于每种类型的交易,分别确定被测服务器对该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易总数的第一比例,与该种类型交易的总交易数占所有交易请求次数的第二比例相乘得到的第三比例,当根据每一种交易类型确定的第三比例之和大于第二阈值时,确定所述被测服务器在该交易请求发起频率下满足交易结果响应延迟要求;
根据所述最大交易请求发起频率确定被测服务器的性能。
6.如权利要求5所述的方法,其特征在于,还包括:
获得被测服务器在各交易请求发起频率下的各项资源指标值,并根据所述各项资源指标值调整所述被测服务器的存储设备的存储性能。
7.如权利要求6所述的方法,其特征在于:
所述资源指标值包括CPU占用率和CPU的WaitIO值:
所述根据所述各项资源指标值调整所述被测服务器的存储设备的存储性能包括:在交易请求发起频率增加时,CPU占用率增幅小于第三阈值,并且CPU的WaitIO值的增幅大于第四阈值,则确定所述存储设备的存储性能不能满足要求。
8.一种服务器测试控制装置,其特征在于,包括:
测试控制模块,用于向模拟装置控制模块发送交易请求发起频率;
模拟装置控制模块,用于根据接收的交易请求发起频率控制电信用户模 拟装置发起相应频率的交易请求,其中,所述交易请求包括不同类型的多种交易请求;
交易数据获得模块,用于获得各交易请求发起频率下所述电信用户模拟装置的交易请求发起时间以及从被测服务器返回的交易结果的接收时间;
测试控制模块根据所述各交易请求发起频率下的交易请求发起时间以及交易结果接收时间,确定所述被测服务器满足交易结果响应延迟要求时最大交易请求发起频率,其中,确定所述被测服务器在其中一个交易请求发起频率下满足交易结果响应延迟要求包括:在该交易请求发起频率下发起的所有交易请求中,对于每种类型的交易,分别确定被测服务器对该种类型交易的交易结果响应延迟小于响应延迟阈值的交易数占该种类型交易总数的第一比例,与该种类型交易的总交易数占所有交易请求次数的第二比例相乘得到的第三比例,当根据每一种交易类型确定的第三比例之和大于第二阈值时,确定所述被测服务器在该交易请求发起频率下满足交易结果响应延迟要求。
9.如权利要求8所述的装置,其特征在于,还包括:资源信息获得模块、辅助测试数据生成模块;
所述资源信息获得模块,根据所述测试控制模块的控制命令获取所述被测服务器的各项资源指标值;
所述辅助测试数据生成模块,用于根据从所述测试控制模块获得的交易请求发起频率以及从所述资源信息获得模块获得的各项资源指标生成各交易请求发起频率下被测服务器的资源测试报告。
10.如权利要求9所述的装置,其特征在于,
所述辅助测试数据生成模块还用于根据各交易请求发起频率下被测服务器的资源性能指标值确定被测服务器的存储设备的存储性能是否满足要求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101021692A CN101540701B (zh) | 2008-03-18 | 2008-03-18 | 一种服务器测试系统以及测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101021692A CN101540701B (zh) | 2008-03-18 | 2008-03-18 | 一种服务器测试系统以及测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101540701A CN101540701A (zh) | 2009-09-23 |
CN101540701B true CN101540701B (zh) | 2011-08-17 |
Family
ID=41123703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101021692A Active CN101540701B (zh) | 2008-03-18 | 2008-03-18 | 一种服务器测试系统以及测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101540701B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8438247B1 (en) * | 2010-12-21 | 2013-05-07 | Amazon Technologies, Inc. | Techniques for capturing data sets |
CN103150238B (zh) * | 2011-12-07 | 2015-11-11 | 阿里巴巴集团控股有限公司 | 一种服务请求处理方法、模拟性能测试方法及装置 |
CN102710458B (zh) * | 2012-05-08 | 2015-04-29 | 华为技术有限公司 | 测试过程的监控方法、测试管理服务器和测试服务器 |
US8756573B2 (en) * | 2012-07-06 | 2014-06-17 | Amazon Technologies, Inc. | Digital item ingestion process |
CN103207821B (zh) * | 2013-05-03 | 2017-04-05 | 北京百度网讯科技有限公司 | Cpu性能评估方法与装置 |
CN103297432B (zh) * | 2013-05-28 | 2016-10-26 | 南京信息工程大学 | 一种人工影响天气网络接入服务器运行方法 |
CN106470250B (zh) * | 2015-08-19 | 2019-09-10 | 互联网域名系统北京市工程研究中心有限公司 | 域名注册方法、装置和系统 |
CN106487603B (zh) * | 2015-08-26 | 2019-12-10 | 阿里巴巴集团控股有限公司 | 一种响应测试方法及装置 |
CN106651569A (zh) * | 2016-12-26 | 2017-05-10 | 中国建设银行股份有限公司 | 交易响应时间的获取系统、获取方法及分析方法 |
CN107943626A (zh) * | 2017-11-08 | 2018-04-20 | 中国银联股份有限公司 | 一种交易系统的性能测试方法及相关服务器 |
US11290364B2 (en) | 2019-04-10 | 2022-03-29 | Hubbell Incorporated | Network stress test |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1549516A (zh) * | 2003-05-12 | 2004-11-24 | 华为技术有限公司 | 一种测试aaa服务器性能的方法及其装置 |
CN1719790A (zh) * | 2004-07-09 | 2006-01-11 | 普天信息技术研究院 | 一种实现信令服务器功能测试的系统及方法 |
US7178065B2 (en) * | 2003-04-02 | 2007-02-13 | Sun Microsystems, Inc. | System and method for measuring performance with distributed agents |
-
2008
- 2008-03-18 CN CN2008101021692A patent/CN101540701B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7178065B2 (en) * | 2003-04-02 | 2007-02-13 | Sun Microsystems, Inc. | System and method for measuring performance with distributed agents |
CN1549516A (zh) * | 2003-05-12 | 2004-11-24 | 华为技术有限公司 | 一种测试aaa服务器性能的方法及其装置 |
CN1719790A (zh) * | 2004-07-09 | 2006-01-11 | 普天信息技术研究院 | 一种实现信令服务器功能测试的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101540701A (zh) | 2009-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101540701B (zh) | 一种服务器测试系统以及测试方法和装置 | |
US9020794B2 (en) | Enabling real-time testing of on-demand infrastructure | |
CN103502944B (zh) | 虚拟机内存调整方法和设备 | |
CN107124472A (zh) | 负载均衡方法及装置、计算机可读存储介质 | |
US20050154576A1 (en) | Policy simulator for analyzing autonomic system management policy of a computer system | |
CN106385459A (zh) | 一种连接请求报文的分配方法及装置 | |
CN109976917A (zh) | 一种负载调度方法、装置、负载调度器、存储介质及系统 | |
CN101576844A (zh) | 软件系统性能测试方法和系统 | |
CN104104551A (zh) | 云资源需求评估方法及装置 | |
CN113688001B (zh) | 服务器硬盘功耗动态均衡方法、装置、终端及存储介质 | |
CN113961413A (zh) | 服务器功耗测试方法及装置 | |
CN108762686A (zh) | 数据一致性校验流控方法、装置、电子设备及存储介质 | |
CN113127356A (zh) | 压测方法、装置、电子设备及存储介质 | |
CN111694748B (zh) | 压力测试方法及装置 | |
CN107193749B (zh) | 测试方法、装置及设备 | |
CN103457784A (zh) | 性能测试方法和装置 | |
CN110874314A (zh) | 压测方法、装置、设备和介质 | |
CN105142226A (zh) | 一种资源分配的方法及装置 | |
RU2532714C2 (ru) | Способ получения данных при оценке ресурсов сети и устройство для осуществления способа | |
CN102929693A (zh) | 整机柜服务器的性能评测方法及装置 | |
CN110083506A (zh) | 集群资源量优化的方法及装置 | |
CN113795032B (zh) | 室分隐形故障的判断方法、装置、存储介质及设备 | |
CN115562926A (zh) | 服务器压力测试方法、系统、装置及计算机可读存储介质 | |
CN111679973B (zh) | 软件测试排期方法、装置、计算机设备及可读存储介质 | |
CN101183957B (zh) | 一种在线计费方法、系统和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |