超实⽤压⼒测试⼯具-ab⼯具
写在前⾯
在学习ab⼯具之前,我们需了解⼏个关于压⼒测试的概念
1. 吞吐率(Requests per second)
概念:服务器并发处理能⼒的量化描述,单位是reqs/s,指的是某个并发⽤户数下单位时间内处理的请求数。某个并发⽤户数下单位时间内能处理的最⼤请求数,称之为最⼤吞吐率。
计算公式:总请求数 / 处理完成这些请求数所花费的时间,即
Request per second = Complete requests / Time taken for tests
2. 并发连接数(The number of concurrent connections)
概念:某个时刻服务器所接受的请求数⽬,简单的讲,就是⼀个会话。
3. 并发⽤户数(The number of concurrent users,Concurrency Level)
概念:要注意区分这个概念和并发连接数之间的区别,⼀个⽤户可能同时会产⽣多个会话,也即连接数。
4. ⽤户平均请求等待时间(Time per request)
计算公式:处理完成所有请求数所花费的时间/ (总请求数 / 并发⽤户数),即
Time per request = Time taken for tests /( Complete requests / Concurrency Level)
5. 服务器平均请求等待时间(Time per request: across all concurrent requests)
计算公式:处理完成所有请求数所花费的时间 / 总请求数,即
Time taken for / testsComplete requests
可以看到,它是吞吐率的倒数。
同时,它也=⽤户平均请求等待时间/并发⽤户数,即
Time per request / Concurrency Level
ab⼯具简介
ab全称为:apache bench
在官⽹上的解释如下:
ab是Apache超⽂本传输协议(HTTP)的性能测试⼯具。其设计意图是描绘当前所安装的Apache的执⾏性能,主要是显⽰你安装的Apache每秒可以处理多少个请求。
其他⽹站解释:
nginx和apache区别ab是apache⾃带的压⼒测试⼯具。ab⾮常实⽤,它不仅可以对apache服务器进⾏⽹站访问压⼒测试,也可以对或其它类型的服务器进⾏压⼒测试。⽐如nginx、tomcat、IIS等。
下载ab⼯具
完整测试报告
重要指标
响应情况
关于登录的问题
有时候进⾏压⼒测试需要⽤户登录,怎么办?
请参考以下步骤:
1. 先⽤账户和密码登录后,⽤开发者⼯具到标识这个会话的Cookie值(Session ID)记下来
2.
总结
总的来说ab⼯具ab⼩巧简单,上⼿学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。因此ab⼯具可以⽤作临时紧急任务和简单测试。
同类型的压⼒测试⼯具还有:webbench、siege、http_load等
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论