AB测试

ab命令

-n 测试会话中所执行的请求个数,默认仅执行一个请求
-c 一次产生的请求个数,即同一时间发出多少个请求,默认为一次一个
-t 测试所进行的最大秒数,默认为无时间限制....其内部隐含值是[-n 50000],它可以使对服务器的测试限制在一个固定的总时间以内
-p 包含了需要POST的数据的文件
-T POST数据所使用的Content-type头信息
-v 设置显示信息的详细程度
-w 以HTML表格的形式输出结果,默认是白色背景的两列宽度的一张表
-i 以HTML表格的形式输出结果,默认是白色背景的两列宽度的一张表
-x 设置属性的字符串,此属性被填入
-y 设置属性的字符串 -z 设置
属性的字符串 -C 对请求附加一个Cookie行,其典型形式是name=value的参数对,此参数可以重复 -H 对请求附加额外的头信息,此参数的典型形式是一个有效的头信息行,其中包含了以冒号分隔的字段和值的对(如"Accept-Encoding: zip/zop;8bit") -A HTTP验证,用冒号:分隔传递用户名及密码 -P 无论服务器是否需要(即是否发送了401认证需求代码),此字符串都会被发送 -X 对请求使用代理服务器 -V 显示版本号并退出 -k 启用HTTP KeepAlive功能,即在一个HTTP会话中执行多个请求,默认为不启用KeepAlive功能 -d 不显示"percentage served within XX [ms] table"的消息(为以前的版本提供支持) -S 不显示中值和标准背离值,且均值和中值为标准背离值的1到2倍时,也不显示警告或出错信息,默认会显示最小值/均值/最大值等(为以前的版本提供支持) -g 把所有测试结果写入一个'gnuplot'或者TSV(以Tab分隔的)文件 -e 产生一个以逗号分隔的(CSV)文件,其中包含了处理每个相应百分比的请求所需要(从1%到100%)的相应百分比的(以微妙为单位)时间 -h 显示使用方法 -k 发送keep-alive指令到服务器端

示例
ab -n 100 -c 5 www.gotophp.cn/index.html


Server Software:        nginx/1.12.2  #nginx版本  
Server Hostname:        www.gotophp.cn #域名
Server Port:            80  #端口

Document Path:          /index.html #路径
Document Length:        15862 bytes #文档大小

Concurrency Level:      5  #并发数
Time taken for tests:   14.633 seconds #请求返回结果耗时
Complete requests:      100 #完成请求次数
Failed requests:        0   #失败次数
Write errors:           0     # 错误  
Total transferred:      1611300 bytes  //整个场景中的网络传输量
HTML transferred:       1586200 bytes  //整个场景中的HTML内容传输量
Requests per second:    6.83 [#/sec] (mean)  # 每秒钟的请求量。(仅仅是测试页面的响应速度)
Time per request:       731.641 [ms] (mean)  #即平均请求等待时间(用户等待的时间)  
Time per request:       146.328 [ms] (mean, across all concurrent     requests) #每个请求实际运行时间的平均值
Transfer rate:          107.53 [Kbytes/sec] received #//平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题

Connection Times (ms)
          min  mean[+/-sd] median   max
Connect:        0   51 219.5      0    1003
Processing:     1  649 1159.7    228    7137
Waiting:        0  141 343.5      1    1886
Total:          1  700 1208.2    229    7138

Percentage of the requests served within a certain time (ms)
  50%    229 # # 50%的请求在229内返回 
  66%    632
  75%    926
  80%   1001
  90%   1710
  95%   3031
  98%   6301
  99%   7138
 100%   7138 (longest request)

你可能感兴趣的:(AB测试)