`
jzkangta
  • 浏览: 161165 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

开源性能测试工具- Apache Bench(转)

    博客分类:
  • JAVA
阅读更多
内容摘要 ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求。前段时间看到公司的开发人员也在用它作一些测试,看起来也不错,很简单,也很容易使用


中国源码网内相关主题链接
Java开源Html解析类库
自己写的Rap3d 引擎 开源发布啦
开源性能测试工具- Apache Bench
微软发布Oxite开源博客平台
开源license总结
开源商业模式失败但理念长存
Gartner:明年开源软件将在所有...
Sun要用开源赢未来


引子

按照原定计划,今天开始研究 JMeter,一天的时间看完了大半的 User Manual,发现原来只要沉住气,学习效率还是蛮高的,而且大堆的英文文档也没有那么可怕 ^_^
本来想顺便把文档翻译一下,不过后来想了想,看懂是一回事,全部翻译出来又是另外一回事了,工作量太大,而且这也不是我一开始要研究 JMeter 的本意。不如大家有兴趣一起研究的遇到问题再一起讨论吧。
开源工具通常都是为了某个特定的目的而开发出来的,所以如果想找到一个开源的性能测试工具去与LoadRunner 或者 QALoad 之类去比较,实在有些勉强。但是开源工具也有它自己的优势:小巧、轻便,在自己擅长的领域可以提供优秀的解决方案。所以,我们可以考虑准备一个自己的“开源测试工具箱”,平时利用空闲时间了解各种工具所适用的环境和目的,知识慢慢积累下来以后,就可以在遇到问题时顺手拈来,轻松化解 ^_^
另外,如果8月份和9月份的空闲时间足够多,我想我会写一个系列文章来讲述在实际的开发和测试过程中引入开源性能测试工具的情况。如果有朋友感兴趣,希望大家可以一起研究和讨论。
简介
ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求。前段时间看到公司的开发人员也在用它作一些测试,看起来也不错,很简单,也很容易使用,所以今天花一点时间看了一下。
通过下面的一个简单的例子和注释,相信大家可以更容易理解这个工具的使用。
一个简单的例子
/*在这个例子的一开始,我执行了这样一个命令 ab -n 10 -c 10 http://www.google.com/。这个命令的意思是启动 ab ,向 www.google.com 发送10个请求(-n 10) ,并每次发送10个请求(-c 10)——也就是说一次都发过去了。跟着下面的是 ab 输出的测试报告,红色部分是我添加的注释。*/
C:\Program Files\Apache Software Foundation\Apache2.2\bin>ab -n 10 -c 10 http
://www.google.com/
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright 1997-2005 The Apache Software Foundation, http://www.apache.org/

Benchmarking www.google.com (be patient).....done


Server Software:        GWS/2.1
Server Hostname:        www.google.com
Server Port:            80

Document Path:          /
Document Length:        230 bytes

Concurrency Level:      10
/*整个测试持续的时间*/
Time taken for tests:   3.234651 seconds
/*完成的请求数量*/
Complete requests:      10
/*失败的请求数量*/
Failed requests:        0
Write errors:           0
Non-2xx responses:      10
Keep-Alive requests:    10
/*整个场景中的网络传输量*/
Total transferred:      6020 bytes
/*整个场景中的HTML内容传输量*/
HTML transferred:       2300 bytes
/*大家最关心的指标之一,相当于 LR 中的 每秒事务数 ,后面括号中的 mean 表示这是一个平均值*/
Requests per second:    3.09 [#/sec] (mean)
/*大家最关心的指标之二,相当于 LR 中的 平均事务响应时间 ,后面括号中的 mean 表示这是一个平均值*/
Time per request:       3234.651 [ms] (mean)
/*这个还不知道是什么意思,有知道的朋友请留言,谢谢 ^_^ */
Time per request:       323.465 [ms] (mean, across all concurrent requests)
/*平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题*/
Transfer rate:          1.55 [Kbytes/sec] received
/*网络上消耗的时间的分解,各项数据的具体算法还不是很清楚*/
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       20  318 926.1     30    2954
Processing:    40 2160 1462.0   3034    3154
Waiting:       40 2160 1462.0   3034    3154
Total:         60 2479 1276.4   3064    3184

/*下面的内容为整个场景中所有请求的响应情况。在场景中每个请求都有一个响应时间,其中 50% 的用户响应时间小于 3064 毫秒,60 % 的用户响应时间小于 3094 毫秒,最大的响应时间小于 3184 毫秒*/
Percentage of the requests served within a certain time (ms)
  50%   3064
  66%   3094
  75%   3124
  80%   3154
  90%   3184
  95%   3184
  98%   3184
  99%   3184
100%   3184 (longest request)


转载自:
版权声明:本文可以被转载,但是在未经本人许可前,不得用于任何商业用途或其他以盈利为目的的用途。本人保留对本文的一切权利。如需转载,请在转载是保留此版权声明,并保证本文的完整性。也请转贴者理解创作的辛劳,尊重作者的劳动成果。

作者:陈雷 (Jackei)

邮箱:jackeichan@gmail.com

Blog:http://jackei.cnblogs.com
分享到:
评论

相关推荐

    测试工具大全word

    - JMeter:Apache开源项目,用于性能测试和负载测试。 - openSTA:开源的Web性能测试工具。 - Siege:另一个开源的Web服务器压力测试工具。 - StressMark:开源的性能测试工具。 - DBMonster:开源数据库性能...

    测试 工具文档

    - DBMonster:开源数据库性能测试工具。 3. 白盒测试/代码分析工具: - VcTesterezTester:用于.NET和C++的代码分析工具。 - Jtest:Parasoft的Java代码静态分析工具,检测潜在错误和缺陷。 - C++test:...

    Apache压力测试工具

    Apache提供了多种压力测试工具,其中包括Apache JMeter、ab(ApacheBench)等,这些工具可以帮助开发者和运维人员理解服务器在高并发情况下的表现。 Apache JMeter是一款功能强大的开源压力和负载测试工具,不仅...

    压力测试工具Apache Bench实现原理及用法解析

    Apache Bench是一款开源的压力测试工具,由Apache HTTP Server项目开发,用于评估Web服务器的性能。它的主要功能是模拟多个并发用户向服务器发送请求,通过这种方式来测量服务器的响应速度和并发处理能力。 一、...

    开源项目-siadat-benchttp.zip

    Apache Bench (ab) 是 Apache HTTP Server 包含的一个命令行工具,用于对 Web 服务器进行性能测试。它能发送多个 HTTP 请求并报告平均响应时间和每秒事务率。Siadat-benchttp 作为其类似工具,同样具备这样的功能,...

    性能测试模板.zip

    - JMeter:开源的Java应用,适用于Web应用的性能测试。 - LoadRunner:商业性能测试工具,支持多种协议。 - Gatling:高性能的HTTP负载测试工具,适合现代Web应用。 - Apache Bench:轻量级的HTTP基准测试工具。...

    PyPI 官网下载 | disk-bench-0.2.0.tar.gz

    总的来说,disk-bench是一个Python编写的,可能用于分布式系统(尤其是云环境)中的磁盘性能测试工具。它可能与Zookeeper有接口,便于在分布式环境中操作。开发者可以将其导入到自己的Python项目中,通过调用其提供...

    软件测试开发工具大全资源包之性能测试工具的资料

    1. JMeter:Apache JMeter是一款开源的Java桌面应用,专为Web应用设计,可进行负载和性能测试。它支持多种协议,如HTTP、FTP、SMTP等,同时可以模拟大量并发用户,分析服务器性能。 2. LoadRunner:由HP(现被Micro...

    网站压力测试工具

    - Apache Bench (ab):轻量级命令行工具,适用于快速简单的HTTP基准测试。 - WebLoad:Radware的商业工具,提供模拟真实用户行为的功能。 4. 压力测试的过程: - 设计测试场景:定义用户行为模型,如页面浏览...

    性能测试入门 性能测试入门

    《性能测试方案.doc》通常会包含测试目标、测试策略、测试环境、测试工具选择、测试脚本设计等内容;而《性能测试入门.doc》则可能更侧重于介绍性能测试的基础知识、方法和案例,帮助初学者快速入门。 通过学习和...

    软件工程中的软件测试工具与技术.pptx

    - **JMeter**:功能强大的开源性能测试工具。 - **LoadRunner**:商业性能测试工具,支持多种协议。 - **Apache Bench**:轻量级命令行工具,适用于快速测试。 - **BlazeMeter**:云端性能测试平台,支持自动化测试...

    性能测试进阶指南.rar

    下面,我们将围绕性能测试的一些核心概念、工具、策略以及进阶技巧进行详细探讨。 一、性能测试目标与类型 1. 响应时间:衡量系统处理请求的速度,通常以毫秒为单位。 2. 吞吐量:系统在单位时间内处理的事务数量,...

    性能测试工具(postman+ab+jmeter).rar

    ab是Apache服务器自带的一个简单性能测试工具,主要用于测试Web服务器的性能。它可以模拟多个并发连接,并向服务器发送HTTP请求,然后提供诸如每秒完成请求数(Requests per second)、吞吐量(Bytes transferred ...

    软件测试中的性能测试与负载测试技巧1.pptx

    - **Apache Bench**:轻量级HTTP性能测试工具。 - **WebLOAD**:用于Web应用性能测试的工具。 ##### 1.5 重要性 - **确保稳定性**:验证系统在各种负载条件下的稳定性。 - **发现瓶颈**:提前发现系统的性能瓶颈。...

    软件测试中的性能测试与负载测试技巧2.pptx

    - **JMeter**:开源性能测试工具,支持多种协议。 - **LoadRunner**:商业级负载测试工具,支持复杂的测试场景。 - **Apache Bench (ab)**:简单的HTTP服务器基准测试工具。 - **WebLOAD**:支持多种Web技术的负载...

    压力测试工具apache-ab讲解

    在开源的apache中自带个ab工具。在C:Apache2. …  近在做webservices,得到的数据是从德国那边的服务器。要将这些数据整合到现在网站中去。不知道性能如何。做个压力测试。现在有些压力测试工具都是收费的。在开源...

    httperf压力测试工具

    - **ab(ApacheBench)**: 是Apache自带的简单性能测试工具,功能相对简单。 - **JMeter**: 更为全面的性能测试工具,支持多种协议,但配置和使用相对复杂。 - **LoadRunner**: 企业级的性能测试工具,功能强大但...

    测试工具总结

    ab(ApacheBench)是Apache服务器自带的轻量级测试工具,可以测量服务器处理请求的速度。http_load则是一个简单的工具,专注于测试吞吐量和响应时间。 对于数据库性能测试,mysqlslap是MySQL的一个实用程序,用于...

Global site tag (gtag.js) - Google Analytics