开源性能测试工具 - Apache ab 介绍

来源:互联网 发布:20岁长高的秘诀 知乎 编辑:程序博客网 时间:2024/06/06 20:36

Apache附带的压力测试工具ab,非常容易使用,并且完全可以摸你各种条件对Web服务器发起测试请求。ab可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户PC本地的计算时间。
      下面我们开始压力测试(环境说明:win7,需要在命令行cmd中切换至ab.exe所在目录),执行以下命令:

1ab -n1000 -c10 http://localhost/index.php/

      执行结果如下:

1This is ApacheBench, Version 2.3 <$Revision: 655654 $>
2Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
3Licensed to The Apache Software Foundation, http://www.apache.org/
4 
5Benchmarking localhost (be patient)
6Completed 100 requests
7Completed 200 requests
8Completed 300 requests
9Completed 400 requests
10Completed 500 requests
11Completed 600 requests
12Completed 700 requests
13Completed 800 requests
14Completed 900 requests
15Completed 1000 requests
16Finished 1000 requests
17 
18Server Software:        Apache/2.2.21
19Server Hostname:        localhost
20Server Port:            80
21 
22Document Path:          /index.php/
23Document Length:        0 bytes
24 
25Concurrency Level:      10
26Time taken for tests:   1.047 seconds
27Complete requests:      1000
28Failed requests:        0
29Write errors:           0
30Total transferred:      187000 bytes
31HTML transferred:       0 bytes
32Requests per second:    955.06 [#/sec] (mean)
33Time per request:       10.471 [ms] (mean)
34Time per request:       1.047 [ms] (mean, across all concurrent requests)
35Transfer rate:          174.41 [Kbytes/sec] received
36 
37Connection Times (ms)
38              min  mean[+/-sd] median   max
39Connect:        0    0   0.5      0       4
40Processing:     2   10   4.5      9      42
41Waiting:        2   10   4.5      9      41
42Total:          2   10   4.5      9      42
43 
44Percentage of the requests served within a certain time (ms)
45  50%      9
46  66%     11
47  75%     13
48  80%     15
49  90%     17
50  95%     18
51  98%     20
52  99%     21
53 100%     42 (longest request)

1.执行ab时3个参数的意思分别表示:

-n1000 :总请求数为1000
-c10 :并发用户数为10
http://localhost/index.php/ :表示这些请求的目标url

2.ab测试结果的各项说明:

Server Software:表示被测试的Web服务器软件名称
Server Hostname:表示请求的URL中的主机名称,这里是localhost
Server Port:表示被测试的Web服务器软件的监听端口
Document Path:表示请求的URL中的根绝对路径
Document Length:表示HTTP响应数据的正文长度
Concurrency Level:表示并发用户数,这是我们设置的参数
Time taken for tests:表示所有这些请求被处理完成所要花费的总时间
Complete requests:表示总请求数,这也是我们设置的参数
Failed requests:表示失败的总请求数,这里的失败指请求在连接服务器、发送数据、接收数据等环节发生异常,以及无响应超时等情况
Total transferred:表示所有请求的响应数据长度总和,包括HTTP响应的头信息和正文数据的长度
HTML transferred:表示所有请求的响应数据中正文数据的总和
Requests per second:表示服务器吞吐率(这是我们应该重点关注的)
Time per request:表示用户平均请求的等待时间
Time per request (mean, across all concurrent requests):表示服务器平均请求处理时间
Transfer rate:表示这些请求在单位时间内从服务器获取的数据长度
Percentage of the requests served within a certain time (ms):这部分数据描述每个请求处理时间的分布情况

0 0
原创粉丝点击