ab压测详解

前言

 

首先要安装工具,才能使用

 

yum -y install httpd-tools

 

 

1.命令参数详解

-n 测试会话中所执行的请求个数,默认仅执行一个请求 
-c 一次产生的请求个数,即同一时间发出多少个请求,默认为一次一个 
-t 测试所进行的最大秒数,默认为无时间限制....其内部隐含值是[-n 50000],它可以使对服务器的测试限制在一个固定的总时间以内 
-p 包含了需要POST的数据的文件 
-T POST数据所使用的Content-type头信息 
-v 设置显示信息的详细程度 
-w 以HTML表格的形式输出结果,默认是白色背景的两列宽度的一张表
-i 以HTML表格的形式输出结果,默认是白色背景的两列宽度的一张表 
-x 设置<table>属性的字符串,此属性被填入<table 这里> 
-y 设置<tr>属性的字符串 
-z 设置<td>属性的字符串 
-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指令到服务器端

 

2.命令

    ab -n 1000 -c 200 "请求路径"        -n 请求次数  -c 并发数

 

 注意请求的路径后面必须有/ 

 

 

 

3:结果参数详解

This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking dg.vdev (be patient).....done


Server Software: nginx/1.12.2              #服务器软件版本
Server Hostname: dg.vdev                #请求的URL
Server Port: 80                  #请求的端口号

Document Path: /index/redis/lock         #请求的服务器的路径
Document Length: 26381 bytes           #页面长度   单位是字节

Concurrency Level: 10                         #并发数
Time taken for tests: 10.517 seconds        #一共使用了多少s 
Complete requests: 100                       #请求的次数
Failed requests: 90                              #失败的请求
(Connect: 0, Receive: 0, Length: 90, Exceptions: 0)
Write errors: 0                                                #网络连接写入错误数
Total transferred: 2656690 bytes                   #总共传输的字节数  http头信息
HTML transferred: 2638190 bytes                 #实际页面传递的字节数
Requests per second: 9.51 [#/sec] (mean)    #每秒多少个请求
Time per request: 1051.684 [ms] (mean)       #平均每个用户等待多长时间
Time per request: 105.168 [ms] (mean, across all concurrent requests)  #服务器平均用多长时间处理
Transfer rate: 246.69 [Kbytes/sec] received  #每秒获取多少数据

Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 188 1012 1122.3 690 4414
Waiting: 187 1012 1122.3 690 4414
Total: 188 1012 1122.3 690 4414

Percentage of the requests served within a certain time (ms)
50% 690                        #50%的用户的请求690ms内返回
66% 698
75% 720
80% 727
90% 4258
95% 4339
98% 4404
99% 4414
100% 4414 (longest request)

posted @ 2019-08-12 09:32  GreenForestQuan  阅读(3858)  评论(0编辑  收藏  举报