Web 压力测试工具 --Apache AB

 

 

       AB(ApacheBench)Apache自带的超文本传输协议(HTTP)性能测试工具。 其设计意图是描绘当前所安装的Apache的执行性能, 主要是显示Apache每秒可以处理多少个请求。

 

   该工具是Apache自带的工具。 安装了Apache Http Server 就有了ap 程序。  Apache Server 可以从Apache 官网直接下载:

 

http://httpd.apache.org/download.cgi#apache22

 

安装完后,在apacheBin目录下有ab.exe 程序。 这个就是我们的AB工具。

 

AB 工具的使用方法:

 

C: >cd C:/Program Files (x86)/Apache Software Foundation/Apache2.2/bin

C:/Program Files (x86)/Apache Software Foundation/Apache2.2/bin>ab

ab: wrong number of arguments

Usage: ab [options] [http://]hostname[:port]/path

Options are:

    -n requests     Number of requests to perform

    -c concurrency  Number of multiple requests to make

    -t timelimit    Seconds to max. wait for responses

    -b windowsize   Size of TCP send/receive buffer, in bytes

    -p postfile     File containing data to POST. Remember also to set -T

    -u putfile      File containing data to PUT. Remember also to set -T

    -T content-type Content-type header for POSTing, eg.

                    'application/x-www-form-urlencoded'

                    Default is 'text/plain'

    -v verbosity    How much troubleshooting info to print

    -w              Print out results in HTML tables

    -i              Use HEAD instead of GET

    -x attributes   String to insert as table attributes

    -y attributes   String to insert as tr attributes

    -z attributes   String to insert as td or th attributes

    -C attribute    Add cookie, eg. 'Apache=1234. (repeatable)

    -H attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip'

                    Inserted after all normal header lines. (repeatable)

    -A attribute    Add Basic WWW Authentication, the attributes

                    are a colon separated username and password.

    -P attribute    Add Basic Proxy Authentication, the attributes

                    are a colon separated username and password.

    -X proxy:port   Proxyserver and port number to use

    -V              Print version number and exit

    -k              Use HTTP KeepAlive feature

    -d              Do not show percentiles served table.

    -S              Do not show confidence estimators and warnings.

    -g filename     Output collected data to gnuplot format file.

    -e filename     Output CSV file with percentages served

    -r              Don't exit on socket receive errors.

    -h              Display usage information (this message)

 

C:/Program Files (x86)/Apache Software Foundation/Apache2.2/bin>

 

 

示例:

C:/Program Files (x86)/Apache Software Foundation/Apache2.2/bin>ab -n 1000 -c 50 http://blog.csdn.net/tianlesoftware/archive/2010/05/25/5622268.aspx

 

-- 注意, 这里要写一个具体的页面

 

This is ApacheBench, Version 2.3 <$Revision: 655654 $>

Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/

Licensed to The Apache Software Foundation, http://www.apache.org/

 

Benchmarking blog.csdn.net (be patient)

Completed 100 requests

Completed 200 requests

Completed 300 requests

Completed 400 requests

Completed 500 requests

Completed 600 requests

Completed 700 requests

Completed 800 requests

Completed 900 requests

Completed 1000 requests

Finished 1000 requests

 

 

Server Software:        nginx/0.7.65

Server Hostname:        blog.csdn.net

Server Port:            80

 

Document Path:      /tianlesoftware/archive/2010/05/25/5622268.aspx --请求资源

Document Length:        169 bytes  --文档返回的长度,不包括相应头

 

Concurrency Level:      50  --并发个数

Time taken for tests:   118.549 seconds  --请求消耗总时间

Complete requests:      1000  --总请求数

Failed requests:        1

   (Connect: 1, Receive: 0, Length: 0, Exceptions: 0)

Write errors:           0

Non-2xx responses:      1000

Total transferred:      334000 bytes

HTML transferred:       169000 bytes

Requests per second:    8.44 [#/sec] (mean)  --平均每秒请求数

Time per request:       5927.439 [ms] (mean)  --平均每个请求时间

Time per request:       118.549 [ms] (mean, across all concurrent requests)

                                          --平均每个请求时间除以并发数, 这里是5927.439/50

Transfer rate:          2.75 [Kbytes/sec] received  -- 时间传输速率

 

Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:       47   97  72.8     63     742

Processing:    57 5720 4597.9   4666   25381

Waiting:       54 2711 3312.5   2128   25176

Total:        112 5817 4595.1   4754   25435

 

Percentage of the requests served within a certain time (ms)

  50%   4754   --

  66%   5491

  75%   6005

  80%   6274

  90%   7366

  95%   8697

  98%  25232

  99%  25415

 100%  25435 (longest request)

 

C:/Program Files (x86)/Apache Software Foundation/Apache2.2/bin>

 

 

含义:  同时处理50个并发请求并运行 1000 :

       /tianlesoftware/archive/2010/05/25/5622268.aspx

 

结果:  在并发50个请求的情况下,完成1000次的访问请求,共花了118.549秒,这个程序每秒可处理8.44个请求。

 

 

小结:

     测试AB的时候,随便在自己的Blog上找了一个网页, 结果测完之后,Blog 就打不开了。 杯具啊。 过了十几分钟才恢复。 下次测试不拿自己的blog 玩了。  - -

 

 

 

 

------------------------------------------------------------------------------

Blog http://blog.csdn.net/tianlesoftware

网上资源: http://tianlesoftware.download.csdn.net

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

DBA1 群:62697716(); DBA2 群:62697977()

DBA3 群:62697850   DBA 超级群:63306533;    

聊天 群:40132017

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

 

posted @ 2010-11-23 00:41  hibernate我最强  阅读(277)  评论(0编辑  收藏  举报