您的位置: 主页 > VR虫洞 > 大唐蝙蝠:基于LoadRunner的搜索引擎负载压力对比测试

大唐蝙蝠:基于LoadRunner的搜索引擎负载压力对比测试

时间: 2019-01-24阅读:

摘要:搜索引擎以其强大的抓取能力,为用户筛选、提供有价值的信息。数据搜索的准确性和性能决定了搜索引擎的市场前景。因此采用loadrunner作为性能测试工具,从搜索引擎的性能负载入手,对目前常用的三款主流搜索引擎进行了性能测试,并对测试结果进行了分析,给出了三款搜索引擎的具体测评数据,以供同行参考。

关键字:搜索引擎;LoadRunner;性能测试;对比测试;软件测试

中图分类号:TP302.7 文献标识码:A 文章编号:1009-3044(2018)28-0253-03

LoadRunner-Based Search Engine Load Pressure Comparison Test

KE Yu-xin, LI Xin-xin, GONG Xun

(School of Computer Dcience and Software Engineering, Jincheng College of Sichuan University, Chengdu 610000, China)

Abstract: Search engine with its powerful grasping ability, for users to filter, provide valuable information. The accuracy and performance of data search determine the market prospect of search engine. Therefore, this paper uses LoadRunner as a performance testing tool, starting from the performance load of search engine, the performance test of three search engines are used at present, and the test results are analyzed, the specific data of three search engines are given for reference by peers.

Key words: search engine; LoadRunner; performance test; contrast test; software test

搜索引擎(Search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。用户可以利用搜索引擎快速有效地从海量数据中提取自己需要的信息。因此如何帮助搜索引擎拥有更好的性能,就是本文要解决的问题。与其他的测试软件相比,性能测试工具 LoadRunner 由于支持众多的协议,拥有良好的操作界面和帮助文档,成为目前应用最为广泛的性能测试工具之一[1]。

本文将选取目前中国市场占比最高的三款搜索引擎:百度、360和搜狗利用性能测试工具 LoadRunner進行负载测试,并对测试数据进行横向对比,提供具有实际意义的测试数据供同行参考。

1 负载测试工具 LoadRunner 简介

LoadRunne是Mercury Interactive 公司的一款工业级系统性能测试工具,于 2006年11月被惠普公司收购,成为惠普公司的一款性能测试产品[2]。它是一款支持多种协议的性能测试工具,主要从响应时间、吞吐量、并发用户和资源利用率等方面来衡量系统的性能。 LoadRunner 通过以模拟真实的用户实施并发负载及实时性能监测的方式来确认和查找问题,优化性能和加速应用系统的发布周期[3]。它不仅能够模拟如按键或鼠标移动等用户界面的操作,而且还能够通过产生应用组件之间的信息来模拟用户的行为[4]。这些信息由LoadRunner进行录制并以脚本形式存储,然后通过运行脚本进行用户模拟测试。利用LoadRunner可以同步模拟成千上万的并发用户,从而测试应用网站是否可以同时负载大量的真实用户[5]

2 测试方案设计

2.1 测试指标

在指定并发用户数压力下的请求平均响应时间、吞吐量、平均吞吐量、请求处理成功率。

2.2 测试计划

根据测试指标,模拟300个用户行为,设计测试脚本与测试场景,统一测试环境对三个搜索引擎进行相应的测试,并对测试结果进行分析。

2.3 设计测试脚本

1) 选择协议:采用Ajax(Click and Script)协议。Ajax(Asynchronous Javascript And XML)是指一种创建交互式网页应用的网页开发技术,用于和服务器异步交互。AJAX通过xmlHttpRequest对象请求服务器,服务器接受请求返回xml或者json数据而不是html,然后支持在html不变情况下动态更新页面内容而无须刷新。普通http请求通过httpRequest对象请求,服务器接受请求返数据需要页面刷新。

2) 录制脚本:利用 VuGen 录制用户脚本。

3) 优化脚本:

(1) 添加集合点函数,用来生成有效可控的并发操作,模拟用户在同一时间进行搜索,在查询事务之前插入集合点函数:lr_rendezvous(“search”)。

(2) 添加文本检查点函数,对服务器返回的内容进行检查,帮助用户验证请求发送出去后,服务器的返回是不是用户期望的内容:web_reg_find("Text=找到相关结果",LAST);

(3) 参数化。用户在录制脚本过程中,提交了一些数据,这些操作都被记录到脚本中,当多个虚拟用户运行脚本时,都是提交相同的记录,这样不符合实际的运行情况,而且有可能引起冲突[6]。为了更加真实地模拟用户的行为,对搜索的内容进行参数化: "SetValue={test}"。

总体 网页资源量较多,服务器性能较好,请求处理成功率尚可。适用于多用户,快网速场景。 网页资源量较多,服务器性能尚可,请求处理成功率较高。适用于中等数量用户,快网速场景。 网页资源量较少,服务器性能较差,请求处理成功率尚可。适用于少量用户,网速尚可场景。 ]

3 结论

本文利用负载测试工具LoadRunner对三个搜索引擎进行了负载压力对比测试,并对测试结果进行了分析。总体来看,百度搜索引擎性能最佳,各项指标均处于平均偏上;搜狗搜索引擎性能次之,其特点是处理成功率较高;360搜索引擎性能稍欠,对比于其余二者仍有一定差距。本测试仅在负载压力方面对搜索引擎进行测试,所选取数据为多次测试中一例,以供于同行参考。

参考文献:

[1] 丁秀兰.Web 测试中性能测试工具的研究与应用[D].太原理工大学,2008.

[2] 王蕾.基于LoadRunner的负载压力测试[J].现代计算机,2013(12):23-25.

[3] 辛小霞.基于LoadRunner的软件性能测试研究[J].现代计算机,2007(6):32-35.

[4] 张丽,蒋平安,杨朋润.石河子垦区土地利用土地覆被变化遥感检测研究[J].新疆农业大学学报,2005,28(1):6-8.

[5] 张莹,陈圣波,王明常,等.土地利用的遥感信息变化提取研究[J].科学技术与工程,2012,12(24):5966-5970.

[6] 李旭东,朱立谷.基于LoadRunner 的参数化策略的研究与应用[J].计算机应用与软件, 2012,29(12):232-236.DOI:10.3969/j.issn. 1000-386x.2012.12.065.

【通联编辑:梁书】

上一篇:qq慧眼神探:基于案例驱动的Java教学的探讨
下一篇:没有了

相关阅读