PC服务器是信息化建设的重要基础,它保存重要的业务数据,支持数据库和中间件等核心部件运行,很多网络服务都在服务器上运行,服务器性能的好坏决定了整个应用系统的性能。可以说选择适当的PC服务器应用到信息化项目中是决定项目成败的重要因素,因此,需要对PC服务器的性能进行综合评价。
现在市场上不同品牌、不同种类的服务器有很多种,用户在选购时,要从纷繁的型号中选择出所需要的,适合于自己应用的服务器产品,仅仅从配置上判别是不够的,需要有一个科学的综合评价方法,通过实际测试来筛选。下面将介绍一套PC服务器性能综合评价方法。
综合评价PC服务器的性能,需要从多个方面对服务器进行测试,包括CPU、内存、硬盘等部件的性能表现,服务器在web服务器应用、数据库服务器应用等方面的应用性能,以及服务器的稳定性等。而且还要保证测试过程的规范性,形成了标准化的操作,保证了服务器性能测试结果的有效性。
本文介绍的测试方法,将测试指标划分为四大类,分别为基本信息检测、服务器部件性能测试、服务器应用性能测试、服务器的稳定性和功耗测试。下面就每一类别的测试内容、测试方法和测试评价进行介绍。
一、 基本信息检测
1) 主要规格检测
这个部分主要对于服务器的物理特性、硬件配置等等进行考察、评估,主要包括以下项目:
CPU型号/数量/主频
主板的核心信息(芯片组标准、PCI总线、扩展插槽数)
内存型号和容量
硬盘(型号,容量,个数、接口类型,控制器型号,***支持个数)
网卡(型号,接口类型)
显卡(型号、显存)
散热设备
供电、扩展槽、IO接口
有无硬件RAID卡/硬RAID卡缓存大小
前端总线带宽(Intel体系)
2) 操作维护
这部分对于服务器的管理功能进行检测:
软件管理功能:是否可读取硬件配置及状态、是否可进行远程维护及故障恢复、是否可进行硬件温度告警等
硬件日志功能
硬件告警功能
远程开机、关机、重启
虚拟介质功能(如:虚拟光驱、软驱)
BIOS升级功能(独立于OS之外)
硬件远程管理的安全性(管理软件用户权限管理)
3) 可靠性
这部分对于服务器硬件是否支持冗余和热备进行检测:
磁盘冗余和热插拔
电源冗余和热插拔
网卡冗余和热备
风扇冗余和热插拔
风扇转速自动调节(根据性能/部分风扇故障/根据温度)
二、 服务器部件性能测试
服务器部件性能主要考虑CPU、内存和硬盘的性能表现,以下分别介绍主要的测试工具和方法。
4) CPU性能测试:
使用通用测试工具SiSoftware Sandra 2009进行测试。SiSoftware是一款可运行在32bit和64bit Windows操作系统上的分析软件,可以对于系统进行方便、快捷的基准测试。利用这款工具,获得被测服务器处理器的整数和浮点运算能力。
5) 内存带宽性能测试:
内存的性能测试也采用SiSoftware Sandra 2009进行测试。使用SiSoftware获得内存带宽、内存缓存延迟等性能指标,SiSoftware通过向内存缓存发送足够多的数据来获得内存带宽;通过记录传输数据块所消耗的时间作为内存缓存延迟。
6) 硬盘IO性能测试:
在Windows操作系统下,使用通用测试工具IOMeter获得系统IO的带宽、延迟等性能指标,在测试中,选择不同的测试脚本,全面测试被测服务器的IO性能;包括以下测试项:
三、 服务器应用性能测试
1) Web应用性能测试:
采用SPEC web基准测试,对服务器web应用性能进行测试。SPEC web测试的原理是,通过多台客户机向服务器发出Http Get请求,模拟internet用户对服务器的请求,调用Web服务器上的网页文件,这些文件从数千字节到数兆字节不等。在相同的时间里,服务器回答的请求越多,就表明服务器对客户端的处理能力越强,系统的Web性能就越好。
Web应用性能测试的测试方法如下:
在被测服务器上安装Windows操作系统,根据SPEC Web基准部署web服务。采用斯博伦公司的Avalanche,以仪表代替模拟客户端向服务器发送http请求。根据实际的Web 服务器一天中的运行情况建立了一个服务器页面请求模型,该模型由4个阶段组成,***阶段是预热阶段, Avalanche发出的请求量由0慢慢上升;第二阶段是逐步加压阶段,请求量逐步累加到***值;第三阶段是动态维持阶段;第四阶段是下降阶段,请求量由***值迅速下降为0。
记录应用服务器系统最多可支持的用户数和每秒***事务数。对被测服务器测试三遍,每遍之间被测服务器和测试仪均重启,结果取三次的平均值。
2) 数据库应用性能测试:
本次的数据库应用性能测试依据TPC组织(交易处理性能委员会)提出的TPC-C规范,TPC-C规范是专门针对联机交易处理系统(OLTP系统)的,它模拟了一个比较复杂,并具有代表意义的OLTP应用环境:假设有一个大型商品批发商,它拥有若干个分布在不同区域的商品库,每个仓库负责为10个销售点供货,每个销售点为3000个客户服务,每个客户平均一个订单有10个产品,所有订单中约1%的产品在其直接所属的仓库中没有存货,需要由其他区域的仓库来提供。
该系统要处理的典型事务主要有以下5个:
新订单:客户输入一笔新的订货交易;
支付操作:更新客户帐户余额以反映其支状况;
发货:发货(模拟批处理交易);
订单状态查询:查询客户最近交易的状态;
库存状态查询:查询仓库库存状况,以便能够及时补货。
对于以上这5种类型的交易,前4种类型的交易要求响应时间在5秒以内,对于库存状况查询交易,要求响应时间在20秒以内。同时,这5种交易的比例满足以下要求:
TPC-C的测试结果主要有两个指标,即流量指标(Throughput,简称tpmc)和性价比(Price/Performance,简称Price/tpmc)。
流量指标(Throughput,简称tpmc):描述了系统在执行支付操作、订单状态查询、发货和库存状态查询这4种交易的同时,每分钟可以处理多少个新订单交易。所有交易的响应时间必须满足TPC-C测试规范的要求。流量指标值越大说明系统的联机事务处理能力越高。
性价比(Price/Performance,简称Price/tpmc):即系统的整体价格与流量指标的比值。性价比越低越好。
测试中,首先在被测服务器上安装Linux操作系统,并安装Oracle10g数据库。在测试工具的选取上,我们选择符合TPC-C规范的基准测试工具Benchmark Factory for Database 4.6,该工具可模拟联机交易处理系统,按设定的比例执行新订单、支付操作、订单状态查询、发货、库存状态查询等事务,从而得出系统的流量指标和性价比。
四、 服务器稳定性和功耗测试
1) 系统稳定性测试
被测服务器安装Windows操作系统,并安装SiSoftware Sandra 2009测试工具。运行SiSoftware的Burn-in computer功能,启动Processor Arithmetic、Processor Multi-media、File Systems、Physical Disks、Memory bandwidth、cache and memory等模块,连续运行72小时,如果运行过程中服务器表现正常,没有出现掉盘、死机、重启等现象,系统日志没有报错信息,表明系统稳定性较好。
2) 系统功耗测试
使用UNI-T UT71E智能数字万用表对于被测服务器系统的整体功耗进行监测,利用随机附带的接口程序,可以记录被测服务器任意时间段内的功率变化。
总结:通过以上的测试方法,可以对服务器进行规范化的测试,保证了测试结果的有效性和测试工作的效率。记录系统部件性能、web和数据库应用服务器性能以及系统的稳定性和功耗等指标,通过对指标的分析和比较,找出被测服务器的不足,并可以对不同服务器的测试结果进行比较,为服务器设计和采购提供数据支持。