使用Apache Bench进行压力测试

Apache Bench是Apache中自带的压力测试工具

在linux中我们安装好apache后可以通过ab指令使用它

格式:ab [参数] [http://]ip地址/path/

常用参数说明:

-n:后面接发起测试的请求总数

-c:后面接每次发起测试的同时请求数

例:ab -n 5000 -c 200 http://localhost/index.php/

(这个意思是向我指定的地址一共发送5000个请求,其中,每次同时发送200个请求)

(之后下面就是测试报告)

Time taken for tests: 3.272 seconds  //整个测试的持续时间

Complete requests: 5000  //完成的请求数量

Failed requests: 0  //失败的请求数

Total transferred: 885000 bytes  //整个场景的网络传输量

HTML transferred: 55000 bytes  //整个场景的html内容传输量

Requests per second: 1528.04 [#/sec] (mean)  //每秒的请求数(后面的mean表示这个值是一个平均值)

Time per request: 130.887 [ms] (mean)  //平均每一次请求的响应时间

Time per request: 0.654 [ms] (mean, across all concurrent requests)  //服务器平均请求等待时间

Transfer rate: 264.12 [Kbytes/sec] received  //平均每秒网络上的流量

/* 下面的内容为整个场景中所有请求的响应情况。在场景中每个请求都有一个响应时间,其中 50 % 的用户响应时间小于 54 毫秒, 66 % 的用户响应时间小于 55 毫秒,最大的响应时间小于 3267 毫秒 */

Percentage of the requests served within a certain time (ms)

50% 54

66% 55

75% 56

80% 57

90% 60

95% 62

98% 65

99% 1396

100% 3267 (longest request)