12_《Web服务器的性能测试方法》
一、基本信息
标题:Web服务器的性能测试方法
发表时间:2007-12-25
作者:魏元雷 胡西虹 潘立伟
来源:上海市计量测试技术研究院
关键词:Web服务器;性能指标;测试方法;
文献来源:基于Web服务器的性能测试方法
二、研究内容
摘要:
本文总结并提出了Web服务器性能测试的指标体系, 对影响Web服务器性能的主要因素进行了分析。讨论 了测试用例选择原则和测试负载的加载方式。针对用户关心的连接速率、并发连接数、并发用户数三个指标的最大 值, 给出了详细的测试方法。
1. 引言:
随着Web技术的迅速发展, Web服务成为目前互联网、企业网、政务网中最广泛的应用, 用户在客户端通过浏览 器与Web服务器进行通信。除了静态页面信息发布, 许多基于Web的应用系统还提供搜索引擎、视频点播、网上业务 办理、协同办公等与用户交互的动态网络应用服务, 对Web服务系统的性能提出了很高的要求。 基于Web的应用服务系统, 通常由浏览器 (Browser) 、Web服务器 (Web Server) 、应用服务器 (Application Se rver) 、数据库服务器 (Database Server) 、基础网络系统等构成。Web服务的性能不仅与上述服务器本身的硬件资 源和软件配置密切相关, 还取决于网络系统的基本性能状况。Web服务器是整个Web服务系统的关键, 因此Web服务 器的性能指标反映了Web服务系统的整体性能状况。
2. Web服务器的性能指标
Web服务是基于HTTP协议的客户/服务器模式的信息交换过程。一次成功的Web访问所可以分为如下几个个过 程:客户端和服务器建立TCP连接 (Connection) ;客户端向服务器发出HTTPGET请求;服务器发送被请求的HTML文档 或其他形式的处理结果给客户端, 客户端每次接收到响应报文后给服务器端发送一个确认报文;服务器发送完被请求的 Web对象后关闭TCP连接结束本次通信。一次请求操作 (如HTTP GET/POST) 和相应的Web服务器的一次响应操作 构成一个HTTP事务处理 (HTTPTransaction) 。
基于上述Web服务的工作过程, Web服务器的基本性能指标, 常用的主要有:
2.1 并发用户数 (Concurrent Users)
模拟用户通过浏览器访问登录Web服务器, 系统能够同时正确及时地服务的用户数。
最大并发用户数是系统容量 指标, 反映了系统可处理同时在线的最大用户数。
2.2 每秒用户数 (User Per Second)
单位时间 (1s) 内成功连接到Web服务系统的新用户的个数。
2.3 并发连接数 (Simultaneous Connections)
Web服务器能够与客户端建立并保持同时打开的TCP连接数, 最大并发连接数反映了Web服务器所对其客户多个 连接的处理能力。
2.4 连接速率 (Connection Rate)
客户端与Web服务器在单位时间 (1s) 新建立的TCP新建连接的个数。
2.5 事务处理次数 (Cumulative Transactions)
Web服务器处理HTTP Transaction的累计总数定义为事务处理次数。一次成功的事务处理须满足如下条件:Web 服务器返回的HTTP响应状态码为2xx;请求的数据全部下载完成;完成fin/ack报文确认。失败的HTTPtransaction其HT TP响应状态码为4xx或5xx。
2.6 事务处理速率 (Transactions Per Second)
在单位时间 (1s) 内成功响应HTTP Transaction的个数。
2.7 服务器响应时间 (Server Response Time)
客户端发送一个HTTP请求至收到HTTP响应头信息消耗的时间。
2.8 页面响应时间 (Page Response Time)
客户端从Web服务器请求一个完整的页面 (包括内嵌对象) 所消耗的时间。
2.9 往返时间 (Round Trip Time)
建立TCP连接时, 从客户端发送SYN请求到服务器返回SYN/ACK的时间。
2.10 系统带宽 (System Bandwidth)
客户端与Web服务器间通过网络传输数字信息的速率, 单位Kbit/s。
3. 影响Web服务器性能的主要因素
3.1 用户访问特征
3.1.1 思考时间 (Think Time)
3.1.2 放弃浏览 (Abort)
3.1.3 动态页面
3.1.4 浏览器/HTTP协议版本
3.1.5 安全套接层 (SLL) 协议使用
3.2 网络状况
3.2.1 丢包率
3.2.2 传输速率/时延
4. Web服务器的基本性能测试方法
合理选择测试脚本与测试用例
4.1 加载方式
Web服务器性能测试的负载类型有六类, 分别是用户数 (Users) 、每秒用户数 (Users/s) 、事务处理次数 (Trans actions) 、事务处理速率 (Transactions/s) 、TCP连接数 (Connections) 、TCP连接速率 (Connections/s) 。
4.2 基本性能测试
对于Web服务器性能, 用户通常最关心的是连接速率、并发连接数、并发用户数三个指标的最大值, 本小节给出 了这三个指标的测试方法, 其他指标的测试方法类似。
负载有效性测试+最大速率+最大并发+最大用户
最大连接速率 (Max CR) 的测试目的是确定Web服务器能够支持的最大每秒钟新建连接数;最大并发接数 (Max Conn) 测试目的是确定Web服务器能够支持的最大同时连接数;最大并发用户数 (Max U) 测试的目的是确定Web服务 器能够支持的最大在线用户数。从而了解Web服务系统的瓶颈所在
三、阅读结论
了解了Web服务器的性能指标体系,以及部分性能测试方法。
具有参考意义。
四、参考文献
[1]M Arlitt, C Williamson.Web server workload characterization:The search for invariants (extended version) .In:ACMSIGMET RICS'96.Marriott, PA, 1996. [2]G Abdulla, E Fox, M Ahrams.Shared user behavioron the World Wide Web.In:Proc Webnet97, Association for the Advance ment of Computingin Education (AACE) 1997.URL:http://www.aace.org/
[3]Philip Joung, Reality Bytes:The Importance of Realism for Improving Web Site Performance, July, 2003, URL:www.spirent com.com/enterprise
[4]R Fielding, J Gettys, Hypertext Transfer Protocol—HTTP/1.1, Request for Comments, RFC2616, 1999, URL:http://www.iet f.org/rfc
[5]蔡立志, 杨根兴.软件系统性能测试方法初探.软件工程与标准化, 2005, 7:44~50. 关于我们