[发明专利]一种分布式负载发生器的实现方法及其系统有效

专利信息
申请号: 201310320221.2 申请日: 2013-07-26
公开(公告)号: CN103414649A 公开(公告)日: 2013-11-27
发明(设计)人: 陈兴振;贾禛;王磊;詹剑锋 申请(专利权)人: 中国科学院计算技术研究所
主分类号: H04L12/801 分类号: H04L12/801;H04L29/08;H04L29/06
代理公司: 北京律诚同业知识产权代理有限公司 11006 代理人: 祁建国;梁挥
地址: 100190 北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 分布式 负载 发生器 实现 方法 及其 系统
【说明书】:

技术领域

发明涉及分布式负载发生器的实现技术,特别是涉及一种分布式负载发生器的实现方法及其系统。

背景技术

随着基于Web的互联网应用越来越广泛,越来越多的工作都依赖于高质量的Web服务器。数据中心的应用也多以Web的方式提供服务。研究如何提高Web服务器的性能和服务质量需要模拟互联网上的用户请求。负载发生器可以模拟互联网上的大量用户请求,观测Web服务器对大量的、变化范围很大的负载的处理情况。通过负载发生器可以评测Web器服务的性能和质量,而高强度的真实负载对于Web服务器的评测至关重要。据实验分析发现人工合成的负载在性能上比真实负载要低两倍,参见文献“席华锋,高通量计算机典型服务类应用负载与体系结构特性分析”。如何利用负载发生器产生高强度负载的同时保证负载的真实性、精确重放负载成为困扰Web服务器性能测试的难题。

负载发生器的一般工作原理如图1所示,在互联网上,客户端与服务器是不对称的,数据的传输量也是不对称的。一个服务器服务于多个客户端。负载发生器模拟的情况要与互联网的真实情况一致。一个负载发生器可以模拟多个用户,向一个服务器发送请求。

在图1中,负载发生器模拟多个client(客户端)向Server(服务器)发送请求,一个个请求组成的请求队列等待Server进行处理,Server处理后对client进行应答响应。

现有的比较常用的负载发生器包括WebStone、Fanban、Httperf、Flood、SPECWeb、S-Client等。WebStone是由SGI开发的网络测试软件,运行在UNIX环境下。Fanban是Sun Microsystems用java1.5+编写的,是一个用于开发和运行benchmark的开源工具。Httperf是HP公司开发的一款Web服务器性能测试工具,能够灵活的产生各种类型的Web负载。Flood是Apache Http工程包含的Http-Test子工程的一个测试工具。SPECWeb标准是由SPEC公司组织开发的,用于测试评估Web服务器性能的指标,到目前为止已经推出了SPECWeb96、SPECWeb99、SPECWeb2005、SPECWeb2009等标准。S-Client是Rice大学开发的一个Web服务器性能测试工具。

WebStone是通过模拟多用户行为在Web服务上产生负载的,其功能是从Web服务器上获取特定的文件。WebStone采用一个WebMaster程序控制多个WebClient程序,可运行在客户机上或者任何独立的计算机上,而且为了对服务器产生足够的负载,可以将WebClient分布在同一网络中的不同客户机上。WebStone是一种压力测试工具,只是尽可能多地产生请求序列,无法保证产生负载的真实性,每次产生的负载不一致。

Fanban负载发生器包括Master和Driver Agents两个部分。Dreiver Agents通过与Master通信来创建Agent Thread,通过Agent Thread来模拟单个用户的行为。Fanban的缺点是只能生成模拟的用户查询,无法生成真实的用户行为,不能进行精确的负载重放。

Httperf通过多线程模拟用户的并发访问行为,来测试服务器的负载能力,比如服务器能同时承受的连接数。由于设计和实现的原因,不管采用何种重放方式,Httperf都会先将日志记录读入,内存占用很大。此外,Httperf实现的计时器极其消耗CPU,在日志较多的情况下,会占用100%的CPU时间和大量内存。Httperf由于采用的是模拟多线程的方式,无法对负载进行控制,不能进行精确的负载重放。

SPECWeb负载发生器的基本原理是按照某种模式持续不断的访问Web服务器,测试服务器的吞吐率、最大连接数、响应延迟等参数,通过这些参数来评估服务器性能。SPECWeb的负载产生器是专门为SPECWeb的数据集设计的,而这个数据集和Web搜索引擎完全不同。SPECWeb按照概率模型生成负载,可重复性差,无法进行精确的负载重放。

S-Client是由n个客户机连接到被测服务器,每个客户机运行一定数量的S-Client进程。客户机通过一个路由器与被测服务器连接。这个路由器必须具有足够的能力通过预计的最大流量。路由器的目的是在测试环境中引入人工的延迟来模拟WAN中的延迟。S-Client仅仅只是一个压力测试工具,功能过于简单。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310320221.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top