美文网首页
压力测试常用指标与测试工具ab

压力测试常用指标与测试工具ab

作者: c4a1d989518e | 来源:发表于2017-05-27 10:27 被阅读738次

    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个。
    我的能得到的结果是:

    ab测试返回

    就其中的一些参数做一下说明:

    • 吞吐率(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 介绍

    相关文章

      网友评论

          本文标题:压力测试常用指标与测试工具ab

          本文链接:https://www.haomeiwen.com/subject/begffxtx.html