ab测试工具的全称是Apache Bench,是Apache下的一个工具。所以要利用ab,首先要安装Apache,并且打开Apache,我的电脑是Mac,所以就拿Mac电脑举个例子,Mac电脑是默认有Apache的,所以不需要另外安装,只要直接启动就好了。
启动:
sudo apachectl start
查看 Apache 版本命令:
httpd -v
关闭命令:
sudo apachectl stop
重启命令:
sudo apachectl restart
接下来就可以使用ab命令了,首先上一段ab命令的代码
ab -n 10 -c 10 http://www.baidu.com/
其中n指的是先后向服务器发送10个请求,而c是指的一次性发送的请求数目为10个。
我的能得到的结果是:
就其中的一些参数做一下说明:
- 吞吐率(Requests per second)
计算公式:总请求数 / 处理完成这些请求数所花费的时间
- 并发连接数(The number of concurrent connections)
概念:某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。
- 并发用户数(The number of concurrent users,Concurrency Level)
一个用户可能会产生多个并发。
- 用户平均请求等待时间(Time per request)
计算公式:处理完成所有请求数所花费的时间/ (总请求数 / 并发用户数)
- 服务器平均请求等待时间(Time per request: across all concurrent requests)
计算公式:处理完成所有请求数所花费的时间 / 总请求数
图中
网络上消耗的时间的分解这是一种时间统计的方法
相应情况这个就是相应时间在246ms的占50%,响应时间在276ms的占90%,依次类推就好了。
如果遇到登录怎么办?
首先用账号密码登录,找到Cookie,然后在ab命令中添加获取到的Cookie,如果需要多个用户登录,就传入多个Cookie。命令语句为
:
一个用户的情况
ab -n 100 -C key=value http://test.com/
多个用户的情况
ab -n 100 -H “Cookie: Key1=Value1; Key2=Value2” http://test.com/
ab的命令当然还有其他选项,这个可以点击
ab - Apache HTTP server benchmarking tool查看更多选项
ab这个工具比较简单,就看其他人的使用体验来说,还是花钱的Loadrunner好啊
参考文章:
超实用压力测试工具-ab工具
Mac OS X 系统配置 Apache+MySql+PHP 详细教程
开源性能测试工具 - Apache ab 介绍
网友评论