| |||
![]() |
基于TPC-W1.8的测试分析
1、引言
2、测试硬件环境系统 3、名词解释 3.1、测试参数 3.2、测试时间计算公式 4、测试结果 4.1、没有启动tpc-w客户端时 4.2、100个EB(模拟浏览器)测试 4.2.1 、模式1测试 4.3、500个EB(模拟浏览器)测试 4.3.1 、模式1测试 4.4、1000个EB(模拟浏览器)测试 4.4.1、模式1测试 4.4.2、模式2测试 4.4.3、模式3测试 5、测试数据分析 6、MATLAB绘制图形一点讲解 6.1、wips图中红点 6.2、wirt图中坐标含义 7、总结 8、下载专区 1、引言 事务性能处理委员会(transaction processing performancecouncil,TPC) 负责制定商务应用基准程序标准规范、性能和价格度量,并管理测试结果的发布。 TPC-W 是TPC委员会2000年发布的一个专门针对电子商务应用基准。 此基准构造了一个网上购书系统,进行大用户量的并发访问测试, 可以获得复杂电子商务环境下服务器运行的信息。 此基准选取了最能反映服务器性能的两个主要指标: 吞吐率(web interactions persecond,WIPS)和响应时间(webinteraction responsetime,WIRT)。 之前进行测试时,使用是1.0版本, 关于怎样部署1.0版本的TPC-W,参考我之前在博客中发表的一篇文章, 这里释出文章地址:http://www.cppblog.com/LIULIANG/archive/2012/09/23/191710.html。 从官网中下载,测试效果不明显,修改参数也进行了很多次测试,但都不理想。 后我换了1.8版本的,牛津大学改进版的,在进行测试,效果挺好。 不同的测试参数会出现不同的测试结果,测试结果和测试参数相符, 同时使用MATLAB将测试数据以图形的形式表示出来。 2、测试硬件环境系统
3、名词解释
3.1、测试参数
(1)参数:-EB rbe.EBTPCW1Factory 100 说明:模仿100个浏览器,使用Browsing模式 Browsing Mix = rbe.EBTPCW1Factory Shopping Mix = rbe.EBTPCW2Factory Ordering Mix = rbe.EBTPCW3Factory (2)参数:-OUT run1.m 说明:测试结果输出文件名为run1.m (3)参数:-RU 100 说明:系统启动时间,这里设置为100s (4)参数:-MI 1000 说明:稳定时间,设置为1000s (5)参数:-RD 100 说明:测试结束时间,设置为100s (6)参数:-WWW http://localhost:8080/tpcw/ 说明:测试网站,设置为http://localhost:8080/tpcw/ (7)参数:-CUST 1000 说明:客户数量,设置为1000, (8)参数:-ITEM 1000 说明:商品数量,设置为1000,只能设置为 ![]() ![]() ![]() ![]() ![]() (9)参数:-MAXERROR 10 说明:最大允许出错次数 3.2、测试时间计算公式 测试时间=52+RU+MI+RD 4、测试结果
首先给出测试机的cpu信息,两个插槽,每插槽核数都为1。截图如下:
![]() 4.1、没有启动tpc-w客户端时 (1)两个处理器,每个处理器核数都为1系统性能截图如下: ![]() (2)四个处理器,每个处理器核数都为1。系统性能截图如下: ![]() 可以系统CPU使用率和内存使用率都是很低的,此时系统处于空闲状态。 4.2、100个EB(模拟浏览器)测试 4.2.1 、模式1测试 (1)测试参数:
截图如下: ![]() cpu平均使用率约为26.7%,内存使用率约为40%,很明显,内存使用率变化不大, 但是cpu使用率是明显比未启动tpc-w客户端时要高了,而且接受的数据量也是明显提高了, 平均速度接近0.5MiB/s。 (3)使用matlab绘制测试结果吞吐量(WIPS) ![]() 吞吐量指单位时间内被测系统能够处理的交易数。 度量单位:WIPS(Web交易数/秒)。该指标反映了系统用户级的事务处理能力, 吞吐量越大,服务器的性能就越好。当前的测试结果平均事物处理能力是14.00。 上述图中,红点表示某个时刻系统的事物处理情况;蓝色竖线是两个分界线, 第一个分界线是系统开始稳定的时候(系统稳定时间可预先设定), 第二分界线是系统一次MI(测试间隔)的截止时间,所以两个分界线间隔的时间值等于MI值 ,即命令中的MI值50秒;黑色线是每个时刻的平均WIPS值连接出来的;绿色的横线则是平均的WIPS值。 基准给出对WIPS应该满足(浏览器数(EB数量)/14)<WIPS<(浏览器数(EB数量)/7), 在测试结果中, 计算得到平均WIPS是14.00,满足:7.14<14.00<14.29。 响应时间(WIRT)![]() 响应时间是服务器对用户每个请求的响应时间的平均值, 度量单位是WlRT,WlRT是指从模拟浏览器EB(emulate browser)请求Web交易所发出的第一个字节开始, 到EB收到交易最后一个字节结束的时间间隔。响应时间越短, 服务器性能越好。显示服务器14个页面的响应时间。 当前的测试结果平均WIRT是34.6462。 思考时间(Think时间)![]() 思考时间用于模拟用户在浏览不同页面时的间隔时间。 具体而言,指从模拟浏览器EB收到上一个交易最后一个字节的时间开始, 到EB发出第一个字节请求下一次交易的时问间隔。测量阶段, 每次Web交易前的平均思考时间在7~8s之间。 结果报告给出了平均思考时间以及思考时间的分布图, 理论上思考时间应按照负指数分布。本次测试中平均思考时间为7.07s。 4.3、500个EB(模拟浏览器)测试4.3.1 、模式1测试 (1)测试参数:
截图如下: ![]() 可以看出,测试系统的cpu使用率接近50%,而内存使用率也接近50%, 对网络带宽占用量大概是5MiB/s比模拟100个EB是有明显的提高。 (3)使用matlab绘制测试结果吞吐量(WIPS) ![]() 响应时间(WIRT) ![]() WIRT平均值:63.3335 思考时间(Think时间) ![]() 4.4、1000个EB(模拟浏览器)测试 4.4.1、模式1测试 (1)测试参数:
截图如下: ![]() 当我们增加到1000个EB时,如果我们在使用两核的CPU将不能承担, 故这里增加两个CPU,增加后可以处理客户的请求。 测试系统的cpu平均使用率接近75%,而内存使用率也接近50%, 对网络带宽占用量大概是6MiB/s。 (3)使用matlab绘制测试结果吞吐量(WIPS) ![]() 响应时间(WIRT) ![]() WIRT平均值:83.4638 思考时间(Think时间) ![]() 4.4.2、模式2测试 (1)测试参数:
截图如下: ![]() 可以看出,测试系统的cpu使用率接近55%, 而内存使用率也接近50%。对网络带宽占用量大概是7MiB/s。 (3)使用matlab绘制测试结果吞吐量(WIPS) ![]() 响应时间(WIRT) ![]() WIRT平均值:40.9428 思考时间(Think时间) ![]() 4.4.3、模式3测试 (1)测试参数:
截图如下: ![]() 可以看出,测试系统的cpu使用率接近40%, 而内存使用率也接近50%,对网络带宽占用量大概是6MiB/s。 (3)使用matlab绘制测试结果吞吐量(WIPS) ![]() 响应时间(WIRT) ![]() WIRT平均值:19.0554 思考时间(Think时间) ![]() 5、测试数据分析
6、matlab绘制图形一点讲解
6.1、wips图中红点
我在wips图中每个2s就一条竖线,并放大图形,如下图: ![]() 上图我们可以看到,实际上每一个时刻, 只会绘制一个红色小点(一条竖线时候穿过一个红色小点), 代表该时刻的吞吐量,这里不要错误的认为一个时刻会有多个吞吐量。 6.2、wirt图中坐标含义 (1)在wirt图中的横坐标表示时间,纵坐标表示比例,
特别这主意这个横坐标并不是我们认为的每一给时刻所占的比例,
这里我用一个例子记性说明。
假如0-1s占80%,1-2s占10%,2-3s占10%,一以1s单位,
那么在图中的表示成三个点,
三点坐标就是(1,20) :1-80%=20% (2)关于每个页面的标准请求时间,我在wirtcon.m下找到了四种标准, 默认使用的是第三种标准,这里将 wirtcon.m释出:
第三种标准(Single deadline class) ![]() 这种标准下Search Request,Product Detail,Home,Order Inquiry是不符合标准的。别的事都符合。 第四种标准(Official TPC-W Spec v1.8) ![]() 这种标准下我们是的响应时间90%都是满足要求的。 7、总结
8、下载专区
|