前一段时间一直在忙于公司项目的事情,所以就没有来更新文章,有点懈怠了。今天特地跑过来更新了一篇关于网站性能测试工具:“apache benchmark”。
ab的安装方式有两种:第一种是在linux系统上安装,由于我测试使用的也是centos6.8版本的所以这个环境下我特别深入研究了一下;另外一种是在window系统上安装,这种安装方式是把软件安装包下载到本地去安装稍等简单介绍一下.
在linux系统上安装,有三种方式: yum ,apt-get,ports.由于 服务器系统 限制我只是测试了yum的安装方式,因为 apache benchmark是apache默认安装的一部分,所以只需要安装apache就可以使用ab这个网站性能测试工具了。安装命令:yum install apache2
安装完成后,运行第一个基准测试吧,测试域名:www.13393722526.com
apache benchmark的命令结构:
ad [options] [full path to web document]
打开命令/shell终端并键入以下命令:
ad -n 1
执行结果如下:
下面具体解释下各个参数的含义:
Server Software: Web主机的系统与版本;在此例中就是压力测试的对象apache
Server Hostname: Web主机的IP位址(Hostname)
Server Port: Web主机的接连端口(Port)
Document Path: 测试网站的路径部分
Document Length: 测试网站回应的网页大小
Concurrency Level: 同时进行压力测试的人数
Time taken for tests: 本次亚利测试所花费的总秒数
Complete requests: 完成的请求数(Requests)
Failed requests: 失败的请求数(Requests)
Write errors: 写入失败的数量
Total transferred: 本次压力测试的总数据传输量(包括 HTTP Header 的资料也计算在內)
HTML transferred: 本次压力测试的总数据传输量(仅计算回传的 HTML 的资料)
Requests per second: 平均每秒可响应多少请求 ;是否可以认为是QPS
Time per request: 平均每个要求所花费的时间(单位: 毫秒);每次并发请求时间(所有并发)
Time per request: 平均每个要求所花费的时间,;每一次请求时间(并发平均)
Transfer rate: 从 ab 到 Web Server 之间的网络传输速度
最后的 Connection Times (ms) 指的是压力测试时的连接处理时间:
橫向部分:
min: 最小值
mean: 平均值
median: 平均值(中间值)
max: 最大值
竖向的部分:
Connect: 从 ab 发出 TCP 要求到 Web 主机所花费的建立时间。
Processing: 从 TCP 连接建立后,直到 HTTP 响应(Response)的资料全部都收到所花的时间。
Waiting: 从发送 HTTP 要求完后,到 HTTP 回应(Response)第一个 Byte 所等待的时间。
Total: 等于 Connect + Processing 的时间(因为 Waiting 包含在 Processing 时间內了)
一般只需要关注HTML trandferred;Requests per second;Time per request这三个关键指标
以上某些文字内容引用《高性能php应用开发》
明天将继续更新网站性能测试工具篇:学习《高性能php应用开发》心得体会之“siege”基准测试工具。请继续关注。