AB(ApacheBench)工具 -- 压力测试
服务器负载太大而影响程序效率也是很常见的,Apache服务器自带有一个叫AB(ApacheBench)的工具,可以对服务器进行负载测试
同时美多商城的秒杀功能也会被高负载影响,从而导致超卖现象
安装xampp软件
进入 c:/xampp/apache/bin
基本用法:
ab -n 全部请求数 -c 并发数测试url
注:可以将ab.exe 加入系统环境变量;或直接切换置 ab 目录执行。如: C:\Windows\System32> cd C:\xampp\apache\bin
更为详细操作
------------------------------------------------------------------------------------------------
C:\xampp\apache\bin>ab-n 100 -c 10 http://www.abc.com/index.html
This is ApacheBench, Version 2.0.40-dev<$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus TechnologyLtd, http://www.zeustech.NET/
Copyright 2006 The Apache SoftwareFoundation, http://www.apache.org/
Benchmarking www.abc.com (bepatient).....done
Server Software: Apache
Server Hostname: www.abc.com
Server Port: 80
Document Path: /index.html
Document Length: 17784 bytes #请求文档大小
Concurrency Level: 10 #并发数
Time taken for tests: 11.898681 seconds #全部请求完成耗时
Complete requests: 100 #全部请求数
Failed requests: 0
Write errors: 0
Total transferred: 1805900 bytes #总传输大小
HTML transferred: 1778400 bytes
Requests per second: 8.40 [#/sec] (mean) #每秒请求数(平均)
Time per request: 1189.868 [ms] (mean) #每次并发请求时间(所有并发)
Time per request: 118.987 [ms] (mean, across all concurrentrequests
Transfer rate: 148.17 [Kbytes/sec] received #传输速率
Connection Times (ms) #连接时间
min mean[+/-sd] median(中位值) max
Connect: (#连接) 59 73 11.9 72 132
Processing: (#处理) 86 998538.7 938 2288
Waiting: (#等待) 63 135 106.8 94 663
Total: 155 1072540.6 1004 2362
在一定比例的请求服务时间
50% 1004
66% 1260
75% 1452
80% 1492
90% 1923
95% 2078
98% 2352
99% 2362
100% 2362 (longest request)
----------------------------------------------------------------------------------------------------------------------------
#整个场景中所有请求的响应情况,在场景中每个请求都有一个响应时间,其中
50%的用户响应时间小于1104毫秒,
80%的用户响应时间小于1492毫秒,
最大的响应时间小于2362毫秒。
备:由于对发请求,cpu实际上并不是同时处理的,而是按照每个请求获得的时间片逐个轮转处理的,所以,基本上第一个Timeper request时间约等于第二个Timeper request时间乘以并发请求数。
其它参数:
-n requests 全部请求数
-c concurrency 并发数
-t timelimit 最传等待回应时间
-p postfile POST数据文件
-T content-type POST Content-type
-v verbosity Howmuch troubleshooting info to print
-w Print outresults in HTML tables
-i Use HEAD instead of GET
-x attributes String to insert as table attributes
-y attributes String to insert as tr attributes
-z attributes String to insert as td or th attributes
-C attribute 加入cookie, eg.'Apache=1234. (repeatable)
-H attribute 加入http头, eg.'Accept-Encoding: gzip'
Inserted after all normalheader lines. (repeatable)
-A attribute http验证,分隔传递用户名及密码
-P attribute Add Basic Proxy Authentication, theattributes
are a colon separated usernameand password.
-X proxy:port 代理服务器
-V 查看ab版本
-k Use HTTPKeepAlive feature
-d Do not showpercentiles served table.
-S Do not showconfidence estimators and warnings.
-g filename Output collected data to gnuplot formatfile.
-e filename Output CSV file with percentages served
-h Display usageinformation (this message)
AB(ApacheBench)工具 -- 压力测试的更多相关文章
- 使用ab 进行并发压力测试
使用ab 进行并发压力测试 - 参与商 - 博客园 https://www.cnblogs.com/shenshangzz/p/8340640.html 使用ab 进行并发压力测试 ab全称为:a ...
- Apache ab并发负载压力测试(python+django+mysql+apache)
如标题,大家都知道秒杀中存在高并发使库存骤然为0,但在我们个人PC或小区域内是模拟不出这样的情景 现在利用 Apache ab并发负载压力测试 1,数据库建入库存字段并映射模型 2,view编写脚本 ...
- ab并发负载压力测试
一.ab 0.安装ab压力测试软件 [root@a2 conf]# yum install httpd-tools -y #查看版本 [root@a2 conf]# ab -V This is Apa ...
- windows Apache ab安装及压力测试
一:安装 ab是Apache自带的网站压力测试工具.使用起来非常的简单和方便.不仅仅是可以Apache服务器进行网站访问压力测试,还可以对其他类型的服务器进行压力测试.比如nginx,tomcat,I ...
- Apache ab并发负载压力测试
由于现在网站都需要能够承受高并发要求的能力,所以当我们写完代码后,如果需要上线,最好都经过压力测试后,这样比较好 运行: 在Windows系统下,打开cmd命令行窗口,定位到apache安装目录的bi ...
- apache的ab命令做压力测试
1. 最基本的关心两个选项 -c -n 例: ./ab -c 100 -n 10000 http://127.0.0.1/index.php -c 100 即:每次并发100个-n 10000 即: ...
- ab命令执行压力测试
ab是Apache超文本传输协议(HTTP)的性能测试工具:设计意图是描绘当前所安装的Apache的执行性能,主要是显示你安装的Apache每秒可以处理多少个请求:ab不仅仅能进行基于apache服务 ...
- Apache服务器下使用 ab 命令进行压力测试
ab是Apache超文本传输协议(HTTP)的性能测试工具. 其设计意图是描绘当前所安装的Apache的执行性能,主要是显示你安装的Apache每秒可以处理多少个请求. #ab -v可以看出其基本信息 ...
- 压力测试工具集合(ab,webbench,Siege,http_load,Web Application Stress)
压力测试工具集合(ab,webbench,Siege,http_load,Web Application Stress) 1 Apache附带的工具ab ab的全称是ApacheBench,是Apac ...
随机推荐
- 合并数组,改变原数组apply与不改变原数组
一看见合并数组,可能第一反应就是concat,concat确实具有我们想要的行为,但它实际上并不附加到现有数组,而是创建并返回一个新数组. 同样你也许会想到ES6的扩展运算符... 但 ...
- CORSFilter 跨域资源访问
CORS 定义 Cross-Origin Resource Sharing(CORS)跨来源资源共享是一份浏览器技术的规范,提供了 Web 服务从不同域传来沙盒脚本的方法,以避开浏览器的同源策略,是 ...
- python--第十天总结(Select/Poll/Epoll使用 )
首先列一下,sellect.poll.epoll三者的区别 select select最早于1983年出现在4.2BSD中,它通过一个select()系统调用来监视多个文件描述符的数组,当select ...
- python中assert详解
assert基础 官方解释:"Assert statements are a convenient way to insert debugging assertions into a pro ...
- TZOJ 1689 Building A New Barn(求平面上有几个其它点求到n个点的曼哈顿距离最小)
描述 After scrimping and saving for years, Farmer John has decided to build a new barn. He wants the b ...
- entity framework core 生成 postgresql 数据库实体
.net core 2.0 使用db first 方式生成 表 和context PM 控制台运行命令出错 Scaffold-DbContext "Host=localhost;Databa ...
- centos7 smplayer 安装 安装视频播放器
# yum -y install http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noar ...
- React-router4 第九篇 Ambiguous Matches 模糊匹配
https://reacttraining.com/react-router/web/example/ambiguous-matches 看了官方的例子,我准备把阮一峰老师的代码再粘贴一次..!!
- json-server使用及路由配置
1.先安装node.js,node.js中包含了json-server模块 2.在angular-hello/src/app/data-base.json文件中,编辑json格式的服务数据, { &q ...
- php数组函数有哪些操作?php数组函数的应用
PHP 的数组是一种很强大的数据类型,与此同时 PHP 内置了一系列与数组相关的函数可以很轻易的实现日常开发的功能.但是我发现好像很多小伙伴都忽略了内置函数的作用(比如我自己就编写过一些有关数组操作的 ...