利用apache ab命令完成性能测试

简介:

ab是什么


ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求。


ab的用法


ab 的用法是:ab [options] [http://]hostname[:port]/path


例如:

ab -n 1000 -c 200 http://xqtesting.blog.51cto.com/

上例表示总共访问小强的博客这个脚本1000次,200并发同时执行。


ab -n 1000 -c 100 -w http://xqtesting.blog.51cto.com/ >>/root/xiaoqiang.html

上面的测试用例表示100并发的情况下,共测试访问index.php脚本1000次,并将测试结果保存到xiaoqiang.html文件中。


ab常用参数的介绍:

-n :总共的请求执行数,缺省是1;

-c: 并发数,缺省是1;

-t:测试所进行的总时间,秒为单位,缺省50000s


ab结果分析


运行上面命令之后的结果太多了?看不懂?不知道看哪个?每个是什么意思?你心中又有十万个为什么了!打住,我们只需关注如下几个指标就好:

  • Requests per second (mean) 相当于 LR 中的 每秒事务数 

  • Time per request (mean)相当于 LR 中的 平均事务响应时间

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


如何传递参数?


ab -n 1 -c 1 "http://localhost/xiaoqiangshop/goods.php?id=20"

一定要有双引号


ab可以完成post操作吗?


ab -n 10 -c 10 -k -p "login.ab" -T "application/x-www-form-urlencoded" "http://localhost/xiaoqiangshop/user.php"


-p 文件中是post的内容(可以是json格式,可以是&格式)

-T 指定post文件的编码方式使用urlencode

-k keepalive连接


login.ab中的内容为登录所需要的信息组合,如下:

username=xiaoqiang&password=123123&act=act_login


注意事项


  • 可以利用ab完成不复杂的性能测试,或者造数据,比较适用于单一URL的测试

  • ab判断成功与否只通过2xx的状态码作为依据,不接收服务器的返回值,但lr却接收服务器完整的返回。所以在同样的响应时间下,ab测试支持的并发数会大于lr,tps也会大于lr。

  • ab运行并发的时候和所在运行机器上的cpu颗数有关,越多则并发越大。所以在linux下支持的并发大于在Windows下

  • 大并发下数据不准,更多的是看ab本身的性能了而不是服务端的性能











本文转自 小强测试帮 51CTO博客,原文链接:http://blog.51cto.com/xqtesting/1962213,如需转载请自行联系原作者
目录
相关文章
|
人工智能 Cloud Native 搜索推荐
贝叶斯 AB 测试
贝叶斯 AB 测试
462 0
|
SQL 搜索推荐 Android开发
AB测试实战(一)
AB测试是一种数据驱动的产品优化方法,用于比较不同版本的网页、应用界面或营销策略的效果。
|
Java 网络安全 Apache
SshClient应用指南:使用org.apache.sshd库在服务器中执行命令。
总结起来,Apache SSHD库是一个强大的工具,甚至可以用于创建你自己的SSH Server。当你需要在服务器中执行命令时,这无疑是非常有用的。希望这个指南能对你有所帮助,并祝你在使用Apache SSHD库中有一个愉快的旅程!
957 29
|
SQL 消息中间件 大数据
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
440 1
|
SQL 大数据 Apache
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
262 1
|
存储 大数据 Apache
大数据-146 Apache Kudu 安装运行 Dockerfile 模拟集群 启动测试
大数据-146 Apache Kudu 安装运行 Dockerfile 模拟集群 启动测试
279 0
|
测试技术 Python
AB测试实战(二)
AB测试是一种数据驱动的产品优化方法,用于比较不同版本的网页、应用界面或营销策略的效果。
|
测试技术 Apache Windows
如何使用apache的ab压力测试小工具传参数
该内容是关于在Windows环境下使用PHPStudy中的Apache集成的ab工具进行性能测试的简要教程。
361 9
|
SQL Apache 流计算
Apache Flink官方网站提供了关于如何使用Docker进行Flink CDC测试的文档
【2月更文挑战第25天】Apache Flink官方网站提供了关于如何使用Docker进行Flink CDC测试的文档
1718 3
|
Shell Linux Apache
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
552 1

热门文章

最新文章

推荐镜像

更多