本发明涉及服务器测试领域,尤其涉及一种基于不同测试场景的服务器性能测试方法。
背景技术:
specjbb(javabusinessbenchmark)是国际权威的标准性能评测机构spec制定并发布的针对java业务性能评测的基准测试,主要用于测量包括jre性能、操作系统性能以及底层硬件的java系统性能,目前已经发展成为java虚拟机供应商、硬件开发者、java应用开发者,以及研究学术组织机构评估java业务应用性能以及可扩展性的权威基准测试标准。specjbb是spec组织发布的最新一代java业务基准测试标准,帮助评估服务器java应用的性能表现。测试的应用模型模拟了全球知名超市公司的it基础设施,帮助优化其pos销售和数据挖掘的多重需求。specjbb测试性能的主要指标是max-jops即每秒钟完成java业务操作的最大值。目前specjbb对服务器的性能测试仅能从较为单一的模式进行测试,,specjbb如何能够在多种测试场景下对服务器进行性能测试是当前丞待解决的技术问题。
技术实现要素:
为了克服上述现有技术中的不足,本发明提供一种基于不同测试场景的服务器性能测试方法,方法包括:
测试客户端创建测试待测服务器的测试参数,定制待测服务器的多种测试场景;
测试客户端向待测服务器发送测试参数以及定制的多种测试场景的参数;
待测服务器接收测试参数以及配置多种测试场景的参数,待测服务器依据定制的多种测试场景的参数,配置测试场景;
待测服务器向测试客户端返回配置的测试场景数据信息;
测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试。
优选地,测试场景包括:默认环境配置,性能平衡场景配置,低延迟场景配置,网络性能场景配置,硬盘io性能场景配置,虚拟内侧场景配置。
优选地,默认环境配置为基于使待测服务器进入节能待机模式,对待测服务器进入节能待机模式下,对cpu及硬盘的测试;
性能平衡场景配置为使待测服务器进入开机模式,仅运行待测服务器开机后,系统后台软件,对待测服务器的硬件进行测试;
低延迟场景配置为基于待测服务器进入网络低延迟场景,使cpu切换到性能模式,对待测服务器的硬件进行测试;
网络性能场景配置为基于待测服务器进入网络连接状态,且待测服务器与其他服务器进入10m/s的数据传输状态下,对待测服务器的硬件进行测试;
硬盘io性能场景配置为测试待测服务器储存吞吐量的场景,关闭默认环境配置,开启提升硬盘网络io性能的路由服务功能;
虚拟内侧场景配置为基于待测服务器降低使用虚拟内存,增大了文件系统缓存脏页比,采用脏页回写硬盘策略。
优选地,测试客户端定制待测服务器的多种测试场景包括:
测试客户端选择与待测服务器测试参数相适配的测试场景,测试场景使用specjbb测试的java编程语言描述测试执行过程;
在测试场景中,配置待测服务器的测试硬件和测试软件数据。
优选地,测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于默认环境配置,对待测服务器进行测试,待测服务器进入默认环境配置,specjbb测试工具对待测服务器在节能待机模式下进行cpu及硬盘的测试。
优选地,测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于性能平衡场景配置,对待测服务器进行测试,待测服务器进入性能平衡场景配置,specjbb测试工具对仅运行待测服务器开机后的系统后台软件,对待测服务器的硬件进行测试。
优选地,测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于低延迟场景配置,对待测服务器进行测试,待测服务器进入低延迟场景配置,specjbb测试工具对待测服务器在低延迟场景配置下使cpu切换到性能模式,对待测服务器的硬件进行测试。
优选地,测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于网络性能场景配置,对待测服务器进行测试,待测服务器进入网络性能场景配置,specjbb测试工具对待测服务器与其他服务器进入10-20m/s的数据传输状态下,对待测服务器的硬件进行测试。
优选地,测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于硬盘io性能场景配置,对待测服务器进行测试,待测服务器进入硬盘io性能场景配置,specjbb测试工具测试待测服务器储存吞吐量的场景,关闭默认环境配置,开启提升硬盘网络io性能的路由服务功能,对待测服务器的硬件进行测试;
测试客户端基于虚拟内侧场景配置,对待测服务器进行测试,待测服务器进入虚拟内侧场景配置,specjbb测试工具针对待测服务器降低使用虚拟内存,增大了文件系统缓存脏页比,采用脏页回写硬盘策略,对待测服务器的硬件进行测试。
优选地,测试客户端对测试后的数据信息进行储存,基于不同测试场景下对数据进行分类、统计、计算和分析,形成各个测试场景的测试报告;测试客户端为用户提供测试信息查询,定制测试报表和测试分析报告形成的功能,以便使用户对测试过程根据分析;测试报告包括:测试实时数据、测试非实时数据和测试准实时数据;测试分析报告包括:基于测试场景下测试数据的归类分析;基于测试场景下测试数据的检索和分析。
从以上技术方案可以看出,本发明具有以下优点:
测试客户端创建测试待测服务器的测试参数,定制待测服务器的多种测试场景,针对不同的测试场景时,合理运用specjbb提供的配置方案,对服务器进行性能测试,可以有效的提升服务器测试性能。
附图说明
为了更清楚地说明本发明的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为基于不同测试场景的服务器性能测试方法流程图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将运用具体的实施例及附图,对本发明保护的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本专利中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利保护的范围。
本实施例提供一种基于不同测试场景的服务器性能测试方法,如图1所示,方法包括:
s1:测试客户端创建测试待测服务器的测试参数,定制待测服务器的多种测试场景;
s2:测试客户端向待测服务器发送测试参数以及定制的多种测试场景的参数;
s3:待测服务器接收测试参数以及配置多种测试场景的参数,待测服务器依据定制的多种测试场景的参数,配置测试场景;
s4:待测服务器向测试客户端返回配置的测试场景数据信息;
s5:测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试。
本实施例中,测试场景包括:默认环境配置,性能平衡场景配置,低延迟场景配置,网络性能场景配置,硬盘io性能场景配置,虚拟内侧场景配置。
具体的,默认环境配置为基于使待测服务器进入节能待机模式,对待测服务器进入节能待机模式下,对cpu及硬盘的测试;
性能平衡场景配置为使待测服务器进入开机模式,仅运行待测服务器开机后,系统后台软件,对待测服务器的硬件进行测试;
低延迟场景配置为基于待测服务器进入网络低延迟场景,使cpu切换到性能模式,对待测服务器的硬件进行测试;
网络性能场景配置为基于待测服务器进入网络连接状态,且待测服务器与其他服务器进入10m/s的数据传输状态下,对待测服务器的硬件进行测试;
硬盘io性能场景配置为测试待测服务器储存吞吐量的场景,关闭默认环境配置,开启提升硬盘网络io性能的路由服务功能;
虚拟内侧场景配置为基于待测服务器降低使用虚拟内存,增大了文件系统缓存脏页比,采用脏页回写硬盘策略。
脏页回写硬盘策略为:sqlserver启动时,同时启动30~40个工作线程,用于完成客户端连接提出的各种操作请求。当客户端连接增加时,sqlserver会自动启动新的工作线程。当某个工作线程空闲15分钟,就会被关闭;当空闲内存不够时,某些工作线程也会被关闭。在x86环境,每个工作线程至少占用0.5mb内存;在x64环境,每个工作线程至少占用2mb内存。当worker线程察觉内存压力时,它会扫描datacache,把一段时间内未被访问的数据页添加到自由列表;如果这些页中有脏页,就回写到硬盘。
本实施例中,测试客户端定制待测服务器的多种测试场景包括:测试客户端选择与待测服务器测试参数相适配的测试场景,测试场景使用specjbb测试的java编程语言描述测试执行过程;在测试场景中,配置待测服务器的测试硬件和测试软件数据。
本实施例中,每个测试场景的测试方式为:
测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于默认环境配置,对待测服务器进行测试,待测服务器进入默认环境配置,specjbb测试工具对待测服务器在节能待机模式下进行cpu及硬盘的测试。
测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于性能平衡场景配置,对待测服务器进行测试,待测服务器进入性能平衡场景配置,specjbb测试工具对仅运行待测服务器开机后的系统后台软件,对待测服务器的硬件进行测试。
测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于低延迟场景配置,对待测服务器进行测试,待测服务器进入低延迟场景配置,specjbb测试工具对待测服务器在低延迟场景配置下使cpu切换到性能模式,对待测服务器的硬件进行测试。
测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于网络性能场景配置,对待测服务器进行测试,待测服务器进入网络性能场景配置,specjbb测试工具对待测服务器与其他服务器进入10-20m/s的数据传输状态下,对待测服务器的硬件进行测试。
测试客户端依据配置待测服务器的多种测试场景,基于每种测试场景通过specjbb测试工具对待测服务器的测试参数进行测试包括:
测试客户端基于硬盘io性能场景配置,对待测服务器进行测试,待测服务器进入硬盘io性能场景配置,specjbb测试工具测试待测服务器储存吞吐量的场景,关闭默认环境配置,开启提升硬盘网络io性能的路由服务功能,对待测服务器的硬件进行测试;
测试客户端基于虚拟内侧场景配置,对待测服务器进行测试,待测服务器进入虚拟内侧场景配置,specjbb测试工具针对待测服务器降低使用虚拟内存,增大了文件系统缓存脏页比,采用脏页回写硬盘策略,对待测服务器的硬件进行测试。
在测试完成后,测试客户端对测试后的数据信息进行储存,基于不同测试场景下对数据进行分类、统计、计算和分析,形成各个测试场景的测试报告;测试客户端为用户提供测试信息查询,定制测试报表和测试分析报告形成的功能,以便使用户对测试过程根据分析;测试报告包括:测试实时数据、测试非实时数据和测试准实时数据;测试分析报告包括:基于测试场景下测试数据的归类分析;基于测试场景下测试数据的检索和分析。当然在测试过程中,测试客户端也实时获取测试数据信息,并将测试展示给用户,让用户实时了解测试过程。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。