ApacheBench,即ab,Apache HTTP server benchmarking tool,是Apache提供的衡量HTTP服务器性能的一个简单的小工具,用来对apache服务器进行压力测试,主要的衡量指标就是服务器每秒能够处理请求的数目,同时支持并发请求。
下面举个例子来分析ab
执行命令:ab -n 10 -c 10 https://www.baidu.com/
场景描述:使用ab命令向百度服务器发送10个请求(-n 10),并且这10个请求是并行发送的(-c 10)
执行结果和分析:
#开始是一些描述信息,版本等
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 www.baidu.com (be patient).....done
#返回的第一个响应的头部信息
Server Software: bfe/1.0.8.1
Server Hostname: www.baidu.com
#ab连接的端口号https是443、http为80
Server Port: 443
SSL/TLS Protocol: TLSv1/SSLv3,AES128-SHA,2048,128
Document Path: /
Document Length: 227 bytes
#并发请求的个数
Concurrency Level: 10
#测试的总时间
Time taken for tests: 0.110 seconds
#完成的请求数
Complete requests: 10
Failed requests: 0
Write errors: 0
#总共传输的字节数
Total transferred: 9292 bytes
HTML transferred: 2270 bytes
#每秒的请求数目(mean为平均)
Requests per second: 90.89 [#/sec] (mean)
#每个请求的平均响应时间(mean为平均)
Time per request: 110.026 [ms] (mean)
#所有并发请求响应完成时间
Time per request: 11.003 [ms] (mean, across all concurrent requests)
#传输速率
Transfer rate: 82.47 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 8 10 1.7 9 13
Processing: 2 31 43.1 6 101
Waiting: 2 31 43.1 6 101
Total: 11 41 43.1 15 110
#下面为结果的统计信息,50%的用户请求响应时间小于15ms,依次类推,所有用户请求的响应时间不超过110ms
Percentage of the requests served within a certain time (ms)
50% 15
66% 19
75% 95
80% 104
90% 110
95% 110
98% 110
99% 110
100% 110 (longest request)
更多参数和结果介绍请参考网站:http://httpd.apache.org/docs/2.2/programs/ab.html