用ab对页面进行压力测试

    ab是apache自带的一个很好用的压力测试工具,当安装完apache的时候,就可以在bin下面找到ab.exe


    linux环境下进行测试:

    1)、复制httpd-2.2.24.tar.gz到/root,解压并用源码方式进行Apache安装

    1、tar zxvf httpd-2.2.24.tar.gz

    2、cd httpd-2.2.24

    3、./configure --prefix=/usr/local/apache2

    4、make

    5、make install


    2)、修改/usr/local/apache2/conf/httpd.conf,修改http监听端口为8080


    3)、启动Apache服务:

    /usr/local/apache2/bin/apachectl start

    或者 /usr/local/apache2/bin/httpd -k start


    4)、将/usr/local/apache2/bin内的性能测试工具文件ab复制到linuxclient的/root内,进入/root,对以上两个链接地址执行以下命令,模拟100个并发用户,对一个页面发送100个请求

    ab -n 100 -c 100 http://172.16.1.1:80/ (最后的斜杠不能缺少


    也可以使用yum命令安装

yum -y install http-tools



    windows环境下:使用之前wamp集成环境(apache 2.4.9+php 5.5.12+mysql 5.6.17)测试,

1、cmd命令打开命令行窗口:

2、切换到Apache 的 bin 目录下:
C:\Users\dell>d:

3、进入到Apache 所在bin目录
D:\>cd wamp\bin\apache\apache2.4.9\bin

4、使用ab命令进行压力测试:
D:\wamp\bin\apache\apache2.4.9\bin>ab -n500 -c100 http://www.taobao.com:80/

其中-n代表请求数,-c代表并发数
结果输出如下:
##首先是apache的版本信息
This is ApacheBench, Version 2.3 <$Revision: 1554214 $>            
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking www.taobao.com (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Finished 500 requests


Server Software:        Tengine                #Web服务器
Server Hostname:        www.taobao.com         #请求的机子
Server Port:            80                     #请求端口

Document Path:          /
Document Length:        258 bytes              #页面长度

Concurrency Level:      100                    #并发数
Time taken for tests:   9.158 seconds          #共使用了多少时间
Complete requests:      500                    #请求数
Failed requests:        0                      #失败请求
Non-2xx responses:      500
Total transferred:      282500 bytes           #总共传输字节数,包含http的头信息等
HTML transferred:       129000 bytes           #html字节数,实际的页面传递字节数
Requests per second:    54.60 [#/sec] (mean)   #每秒多少请求,这个是非常重要的参数数值,服务器的吞吐量
Time per request:       1831.505 [ms] (mean)   #用户平均请求等待时间
Time per request:       18.315 [ms] (mean, across all concurrent requests)    #服务器平均处理时间,也就是服务器吞吐量的倒数
Transfer rate:          30.13 [Kbytes/sec] received    #每秒获取的数据长度

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        1   14 189.6      2    3003
Processing:     3 1795 1659.3   2401    5415
Waiting:        2  649 1187.8     98    3187
Total:          5 1809 1666.5   2403    5418

Percentage of the requests served within a certain time (ms)
  50%   2403        # 50%的请求在2403ms内返回 
  66%   3177        # 66%的请求在3177ms内返回
  75%   3186
  80%   3188
  90%   3192
  95%   5410
  98%   5414
  99%   5416
 100%   5418 (longest request)

D:\wamp\bin\apache\apache2.4.9\bin>

冷暖自知一抹茶ck

    


    ab的使用说明:

命令格式:ab [options] [

-n 需要执行的请求次数
-c 并发的数量
-t 等待返回的最长时间
-b TCP收发缓冲区的大小,单位(byte)
-p 使用post (同时需要定义-T参数)
-u 使用put (同时需要定义-T参数)
-T content-type, 例如application/x-www-form-urlencoded, 默认为text/plain
-w 把结果打印在html的表格里
-x 表格的属性
-y tr行属性
-z td列属性
-C 设置cookie 例如Apach=1234
-H header行, 例如Accept-Encoding:gzip
-k 是否标示位HTTP Keep Alive

冷暖自知一抹茶ck
请先登录后发表评论
  • 最新评论
  • 总共0条评论