【Code Tools】AB性能测试工具(一)
一、工具下载
yum -y install httpd-tools
二、AB工具使用
格式: ab [options] [http://]hostname[:port]/path 例如:ab -n 1000 -c 10 https://www.baidu.com/ 参数: //在测试会话中所执行的请求个数。默认时,仅执行一个请求 -n requests Number of requests to perform //一次产生的请求个数。默认是一次一个。 -c concurrency Number of multiple requests to make
➜ ~ ab -n 1000 -c 10 https://www.baidu.com/ //apache版本信息 This is ApacheBench, Version 2.3 <$Revision: 1826891 $> 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) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed 600 requests Completed 700 requests Completed 800 requests Completed 900 requests Completed 1000 requests Finished 1000 requests //平台BWS 版本1.1 Server Software: BWS/1.1 //请求ip或者域名 Server Hostname: www.baidu.com //请求端口,当前请求为https所以端口为443,请求https端口80 Server Port: 443 //https端口协议 SSL/TLS Protocol: TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256,2048,128 TLS Server Name: www.baidu.com //路径 Document Path: / //第一个成功返回的文档的字节大小 Document Length: 227 bytes //并发数!!! Concurrency Level: 10 //从建立连接到最后接受完成总时间 Time taken for tests: 17.851 seconds //总请求数成功的 Complete requests: 1000 //失败的 Failed requests: 0 //从服务器接收的字节总数 Total transferred: 893000 bytes //HTML接收字节数 HTML transferred: 227000 bytes //核心参数1:吞吐率,指某个并发用户数下单位时间内处理的请求数; Requests per second: 56.02 [#/sec] (mean) //核心参数2:是用户平均请求等待时间,指处理完成所有请求数所花费的时间 /(总请求数 / 并发用户数); Time per request: 178.515 [ms] (mean) //是服务器平均请求处理时间,指处理完成所有请求数所花费的时间 / 总请求数; Time per request: 17.851 [ms] (mean, across all concurrent requests) //平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题 Transfer rate: 48.85 [Kbytes/sec] received //网络上消耗的时间的分解,各项数据的具体算法还不是很清楚 Connection Times (ms) min mean[+/-sd] median max Connect: 43 139 33.0 138 316 Processing: 7 38 39.1 32 1023 Waiting: 6 29 38.5 21 1023 Total: 55 177 48.4 174 1137 //每秒请求时间分布情况,指在整个请求中,每个请求的时间长度的分布情况,下面每个请求都有一个响应时间,其中50%的用户响应时间小于174 毫秒,<br>80% 的用户响应时间小于203 毫秒,最大的响应时间小于1137 毫秒 由于对于并发请求,cpu实际上并不是同时处理的,而是按照每个请求获得的时间片逐个轮转处理的,<br>所以基本上第一个Time per request时间约等于第二个Time per request时间乘以并发请求数 Percentage of the requests served within a certain time (ms) 50% 174 66% 188 75% 198 80% 203 90% 224 95% 244 98% 270 99% 289 100% 1137 (longest request)
你投入得越多,就能得到越多得价值