Chinaunix首页 | 论坛 | 博客
  • 博客访问: 23404
  • 博文数量: 3
  • 博客积分: 218
  • 博客等级: 入伍新兵
  • 技术积分: 60
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-20 18:11
文章分类

全部博文(3)

文章存档

2012年(3)

我的朋友
最近访客

分类: LINUX

2012-05-29 10:40:20

ab

可用参数:
-A auth-username:password
向服务器提供基本认证信息。用户名和密码之间由一个":"隔开,并将被以base64编码形式发送。无论服务器是否需要(即是否发送了401认证需

求代码),此字符串都会被发送。
-c concurrency
一次产生的请求个数。默认是一次一个。
-C cookie-name=value
对请求附加一个"Cookie:"头行。其典型形式是 name=value 的一个参数对。此参数可以重复。
-d
不显示"percentage served within XX [ms] table"消息(为以前的版本提供支持)。
-e csv-file
产生一个逗号分隔(CSV)文件,其中包含了处理每个相应百分比请求(从1%到100%)所需要的相应百分比时间(以微秒为单位)。由于这种格式已经

"二进制化",所以比"gnuplot"格式更有用。
-g gnuplot-file
把所有测试结果写入一个"gnuplot"或者TSV(以Tab分隔)文件。此文件可以方便地导入到 Gnuplot, IDL, Mathematica, Excel中。其中的第一

行为标题。
-h
显示使用方法的帮助信息。
-H custom-header
对请求附加额外的头信息。此参数的典型形式是一个有效的头信息行,其中包含了以冒号分隔的字段和值(如:"Accept-Encoding:

zip/zop;8bit")。
-i
执行HEAD请求,而不是GET 。
-k
启用KeepAlive功能,即在一个HTTP会话中执行多个请求。默认不启用KeepAlive功能。
-n requests
在测试会话中所执行的请求个数。默认仅执行一个请求,此时其结果不具有意义。
-p POST-file
包含了POST数据的文件。
-P proxy-auth-username:password
对一个中转代理提供基本认证信息。用户名和密码由一个":"隔开,并将被以base64编码形式发送。无论服务器是否需要(即是否发送了407代理

认证需求代码),此字符串都会被发送。
-q
如果处理的请求数大于150,ab每处理大约10%或者100个请求时,会在stderr输出一个进度计数。此 -q 标记可以屏蔽这些信息。
-s
用于编译中(ab -h 会告诉你)使用了SSL的受保护的https ,而不是http协议的时候。此功能是实验性的,最好不要用。
-S
不显示中值和标准偏差值,而且在均值和中值为标准偏差值的1到2倍时,也不显示警告或出错信息。默认时,会显示最小值/均值/最大值等数

值。(为以前的版本提供支持)
-t timelimit
测试所进行的最大秒数。内部隐含值是"-n 50000"。它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。
-T content-type
POST数据时所使用的"Content-type"头信息。
-v verbosity
设置显示信息的详细程度,4或更大值会显示头信息,3或更大值可以显示响应代码(404,200等),2或更大值可以显示警告和其他信息。
-V
显示版本号并退出。
-w
以HTML表格形式输出结果。默认时,它是白色背景的两列宽度的一张表。
-x

-attributes
设置
属性的字符串。此属性被填入

-X proxy[:port]
对请求使用代理服务器。
-y -attributes
设置属性的字符串。
-z
-attributes
设置
属性的字符串。

参数很多,一般我们用 -c 和 -n 参数就可以了. 例如:
./ab -c 100 -n 10000

$Content$nbsp;./ab -c 100 -n 10000
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $Content$gt; apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd,
Copyright (c) 1998-2002 The Apache Software Foundation,

Benchmarking 127.0.0.1 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Finished 10000 requests

Server Software:        Apache/2.0.53
Server Hostname:        127.0.0.1
Server Port:            80

Document Path:          /index.php
Document Length:        17998 bytes

Concurrency Level:      100
Time taken for tests:   660.930623 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      181850000 bytes
HTML transferred:       179980000 bytes
Requests per second:    15.13 [#/sec] (mean)
Time per request:       6609.306 [ms] (mean)
Time per request:       66.093 [ms] (mean, across all concurrent requests)
Transfer rate:          268.69 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0   15 117.6      0    1730
Processing:   436 6564 1142.2   6517   15395
Waiting:      340 4164 1512.2   3906   14973
Total:        436 6579 1143.4   6526   15395

Percentage of the requests served within a certain time (ms)
  50%   6526
  66%   6972
  75%   7262
  80%   7377
  90%   7755
  95%   8295
  98%   8683
  99%   9815
 100%  15395 (longest request)

ab的缺点是一次只能写一个url,下一篇介绍另一个开源的压力测试工具siege,一次可以对多个url做压力测试,且支持增量方式。

阅读(1480) | 评论(0) | 转发(0) |
0

上一篇:tcpdump使用说明

下一篇:没有了

给主人留下些什么吧!~~