`
flynewton
  • 浏览: 59913 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Apache压力工具ab介绍

阅读更多

关键字: 压力测试 , ab , apache

转自:http://www.rickyzhu.com/129_quick-introduce-to-ab.html

Apache压力测试工具apache bench 简称ab.主要是从系统设计和开发的角度去评价系统在一定压力下的表现,就正如下面的介绍一样,看每秒系统能支持的并发请求.从而进行相关的调优操作. 下面是ab的官方介绍.

ab is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache installation performs. This especially shows you how many requests per second your Apache installation is capable of serving.

支持的参数和参数的介绍如下:

ab [ -A auth-username:password ] [ -c concurrency ] [ -C cookie-name=value ] [ -d ] [ -e csv-file ] [ -ggnuplot-file ] [ -h ] [ -H custom-header ] [ -i ] [ -k ] [ -n requests ] [ -p POST-file ] [ -P proxy-auth-username:password ] [ -q ] [ -s ] [ -S ] [ -t timelimit ] [ -T content-type ] [ -v verbosity] [ -V ] [ -w ] [ -x

-attributes ] [ -X proxy[:port] ] [ -y  -attributes  ] [ -z 

-attributes ] [http://]hostname[:port]/path

 

-A auth-username:password
Supply BASIC Authentication credentials to the server. The username and password are separated by a single : and sent on the wire base64 encoded. The string is sent regardless of whether the server needs it (i.e., has sent an 401 authentication needed).
-c concurrency
Number of multiple requests to perform at a time. Default is one request at a time.
-C cookie-name=value
Add a Cookie: line to the request. The argument is typically in the form of a name=value pair. This field is repeatable.
-d
Do not display the “percentage served within XX [ms] table”. (legacy support).
-e csv-file
Write a Comma separated value (CSV) file which contains for each percentage (from 1% to 100%) the time (in milliseconds) it took to serve that percentage of the requests. This is usually more useful than the ‘gnuplot’ file; as the results are already ‘binned’.
-g gnuplot-file
Write all measured values out as a ‘gnuplot’ or TSV (Tab separate values) file. This file can easily be imported into packages like Gnuplot, IDL, Mathematica, Igor or even Excel. The labels are on the first line of the file.
-h
Display usage information.
-H custom-header
Append extra headers to the request. The argument is typically in the form of a valid header line, containing a colon-separated field-value pair (i.e., "Accept-Encoding: zip/zop;8bit").
-i
Do HEAD requests instead of GET.
-k
Enable the HTTP KeepAlive feature, i.e., perform multiple requests within one HTTP session. Default is no KeepAlive.
-n requests
Number of requests to perform for the benchmarking session. The default is to just perform a single request which usually leads to non-representative benchmarking results.
-p POST-file
File containing data to POST.
-P proxy-auth-username:password
Supply BASIC Authentication credentials to a proxy en-route. The username and password are separated by a single : and sent on the wire base64 encoded. The string is sent regardless of whether the proxy needs it (i.e., has sent an 407 proxy authentication needed).
-q
When processing more than 150 requests, ab outputs a progress count on stderr every 10% or 100 requests or so. The -q flag will suppress these messages.
-s
When compiled in (ab -h will show you) use the SSL protected https rather than the http protocol. This feature is experimental and very rudimentary. You probably do not want to use it.
-S
Do not display the median and standard deviation values, nor display the warning/error messages when the average and median are more than one or two times the standard deviation apart. And default to the min/avg/max values. (legacy support).
-t timelimit
Maximum number of seconds to spend for benchmarking. This implies a -n 50000 internally. Use this to benchmark the server within a fixed total amount of time. Per default there is no timelimit.
-T content-type
Content-type header to use for POST data.
-v verbosity
Set verbosity level – 4 and above prints information on headers, 3 and above prints response codes (404, 200, etc.), 2 and above prints warnings and info.
-V
Display version number and exit.
-w
Print out results in HTML tables. Default table is two columns wide, with a white background.
-x  -attributes
String to use as attributes for  . Attributes are inserted 
 here >.
-X proxy[:port]
Use a proxy server for the requests.
-y  -attributes
String to use as attributes for  .
-z 
-attributes
String to use as attributes for 
.

下面是一个具体的例子:

在命令行下输出:

./ab -n number_of_total_requests -c number_of_simultaneous_requestshttp://your_web_server/your_php_app.php

 

例如:./ab -n 1000 -c 50 http://www.domain.com/myapp.php

AB将同时向http://www.domain.com/myapp.php发出50个并发请求,共发出1000次。

 

 

测试结果将可能是这样的:

Server Software: Apache/2.0.16
Server Hostname: localhost
Server Port: 80
Document Path: /myapp.php
Document Length: 1311 bytes
Concurrency Level: 50
Time taken for tests: 8.794 seconds
Complete requests: 1000
Failed requests: 0
Total transferred: 1754000 bytes
HTML transferred: 1311000 bytes
Requests per second: 113.71
Transfer rate: 199.45 kb/s received
Connection Times (ms)
min avg max
Connect: 0 0 5
Processing: 111 427 550
Total: 111 427 555

myapp.php每秒钟可以处理的请求数为113.71个。将请求数增加,看看服务器能否处理更大的压力。你也需要调节Apache的 MaxClients,ThreadsPerChild,MaxThreadsPerChild等参数,基于你的httpd.conf中的MPM模块选择。

如果你想得到更详细的信息,请到www.apache.org上查阅一些更深入的文档,包括模块和第三方的提高效率的工具。修改httpd.conf后,要重启Apache服务器,然后再用AB测试。你会看到每秒请求数增加或减少。记下每次的参数,最后选择最佳效率的那种配置。

分享到:
评论

相关推荐

    Apache 压力测试工具ab 专注接口测试 并发测试

    Apache 压力测试工具ab 专注接口测试 并发测试Apache 压力测试工具ab 专注接口测试 并发测试

    Apache 压力测试工具ab

    ab是Apache超文本传输协议(HTTP)的性能测试工具。 其设计意图是描绘当前所安装的Apache的执行性能, 主要是显示你安装的Apache每秒可以处理多少个请求。

    压力测试apache ab小工具

    NULL 博文链接:https://houzhe11.iteye.com/blog/719461

    Apache ab压力测试工具

    ab是Apache超文本传输协议(HTTP)的性能测试工具。其设计意图是描绘当前所安装的Apache的执行性能,主要是显示你安装的Apache每秒可以处理多少个请求。

    Apache网站压力测试工具ab使用教程.zip

    Apache网站压测工具ab使用教程.zip

    Apache Benchmark(简称ab压力测试工具) 是Apache安装包中自带的压力测试工具 ,简单易用

    此外,我们再根据上面的用法介绍界面来详细了解每个参数选项的作用。 -n 即requests,用于指定压力测试总共的执行次数。 -c 即concurrency,用于指定的并发数。 -t 即timelimit,等待响应的最大时间(单位:秒)。 ...

    apache的ab.exe服务器压力测试工具

    apache的ab.exe服务器压力测试工具,用于对各种服务器压力测试

    apache benchmark ab.exe

    apache benchmark 独立文件 ab.exe 可以直接使用 Version 2.3。一般用户压力测试用。参数如下 .\ab.exe --help Options are: -n requests Number of requests to perform -c concurrency Number of multiple ...

    Apache ab压力测试

    NULL 博文链接:https://2279972332.iteye.com/blog/1989163

    apache ab工具页面压力测试返回结果含义解释

    主要介绍了apache ab工具页面压力测试返回结果含义解释,ab工具的使用非常简单,但返回结果中的数据有点多,看不懂的话就需要看看本文了,需要的朋友可以参考下

    apache-tomcat-ab工具

    apache-tomcat-ab工具,采用命令可查看请求压力测试。

    apache-httpd 压力测试工具

    apache bench 简称AB,是apache自己的压力测试功能,简单好用。官网上说: ab是Apache超文本传输协议(HTTP)的性能测试工具。其设计意图是描绘当前所安装的Apache的执行性能,主要是显示你安装的Apache每秒可以处理...

    Apache自带的ab压力测试工具用法详解

    ab是apache自带的一个很好用的压力测试工具,当安装完apache的时候,可以在bin下面找到ab  1 我们可以模拟100个并发用户,对一个页面发送1000个请求  ./ab -n1000 -c100 http://www.baidu.com  其中-n代表请求...

    apache-jmeter-5.5压力测试工具

    1.写在前面 等到服务上线后,在业务压力的冲击下,会发现程序运行非常的慢,或者是宕机,莫名其妙的出现各种问题,只会进行一些无脑的硬件资源扩容,哪扩容真的能解决问题吗... Apache的ab压力测试 Nginter 韩国研发

    压力测试工具ab(Apache Bench)的使用

    1. ab工具介绍  ab全称为:apache bench。  在官网上的解释如下:  ab是Apache超文本传输协议(HTTP)的性能测试工具。其设计意图是描绘当前所安装的Apache的执行性能,主要是显示你安装的Apache每秒可以处理...

    apache ab windows可用

    apache ab windows可用.ab工具ab小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。因此ab工具可以用作临时紧急任务和简单测试

    压力测试工具apache-ab讲解

    在开源的apache中自带个ab工具。在C:Apache2. …  近在做webservices,得到的数据是从德国那边的服务器。要将这些数据整合到现在网站中去。不知道性能如何。做个压力测试。现在有些压力测试工具都是收费的。在开源...

    使用Apache ab工具对Apache服务器进行简单的压力测试

    主要介绍了使用Apache ab工具对Apache服务器进行简单的压力测试的方法,文中还对如何查看当前Apache的连接数的方法作了介绍,需要的朋友可以参考下

    AB测试工具

    apache自带ab工具,可以测试 apache、IIs、tomcat、nginx等服务器 但是ab没有Jmeter、Loadrunner那样有各种场景设计、各种图形报告和监控,只需一个命令即可,有输出描述 可以简单的进行一些压力测试

    网站压力测试工具ab使用教程实践.zip

    网站压力测试工具ab使用教程实践.zip 虽然有很多知名的压测工具,但是apache的ab是个好东西,免费还好用

Global site tag (gtag.js) - Google Analytics