您的位置:时时app平台注册网站 > 彩世界网址 > Web性能压力测试工具之ApacheBench(ab)详解及概念

Web性能压力测试工具之ApacheBench(ab)详解及概念

2019-11-21 02:20

今昔有非常多工具得以用来标准地评估和测量检查验质量量,然则本文就主要介绍最首要的风姿浪漫款工具:Apache Benchmark。使用该工具在您的网址上查询特定页面以致能够向它传送cooki音信,模拟通过认证的客户卡塔尔,以测量响应境况。你能够在收受测量检验的服务器上的命令行使用Apache Benchmark,同一时间还是能博取实惠的结果,因为该工具占用的Computer和内部存款和储蓄器财富超少。上边是黄金年代种标准的用法:

Transfer rate:          23.86 [Kbytes/sec] received  //平均每秒互联网上的流量,能够帮忙消亡是或不是留存互连网流量过大引致响适那个时候候间延长的难题
Connection Times (ms)  //网络上海消防耗的时间的分解

-C attribute Add cookie, eg. -C“c1=1234,c2=2,c3=3″ (repeatable)

$ ab -n 1000 -c 20
此处的值如下:
n = 页面诉求的数量
c = 并发连接的数码
最关键的参数是c,即现身央求的数量,而n这几个数要丰富大,本领提供稳固的结果。关键在于,要利用分歧的c值来测验网址,先从小的数值发轫,稳步加大,直到“每秒诉求”的重临值开头下降。譬如说:
$ ab -n 1000 -c 20 | grep ‘Requests per second’
每秒央求:45.29 [#/sec]平均值)
$ ab -n 1000 -c 40 | grep ‘Requests per second’
每秒必要:46.91 [#/sec]平均值)
$ ab -n 1000 -c 60 | grep ‘Requests per second’
每秒恳求:8.55 [#/sec]平均值)
$ ab -n 1000 -c 80 | grep ‘Requests per second’
每秒央浼:2.21 [#/sec]平均值)

您恐怕感兴趣的篇章:

  • apache ab工具页面压力测量检验再次回到结果含义解释
  • apache品质测量检验工具ab使用详细明白
  • apache下ab.exe使用介绍
  • 使用Apache ab工具对Apache服务器进行简单的压力测验

ApacheBench参数表明

我们能够动用更加小的增量来细化c值,可是以10为最相通倍数平时足矣。

-c concurrency  并发数

//设置突显音讯的详尽程度 – 4或越来越大值会展现头信息, 3或更加大值可以来得响应代码(404, 200等), 2或更加大值能够展现警报和其余新闻。 -V 展现版本号并退出。

上边那五条准绳能够帮忙你优化安装的Drupal服务器,此外附有点示范,表明什么行使那一个准则。服务器优化是个庞大的天地,它在反复升高,然则大家能够由此探讨深入分析部分简约的事态,了然相比复杂的事态。

  75%   3974

//-attributes 设置属性的字符串. 缺陷程序中有各个静态表明的固定长度的缓冲区。此外,对命令行参数、服务器的响应头和其余外界输入的解析也相当粗略,那也许会有不良后果。它并未有完整地促成 HTTP/1.x; 仅接纳一些’预想’的响应格式。 strstr(3)的高频利用只怕会拉动质量难点,即你或者是在测量试验ab实际不是服务器的天性。

...

-X proxy:port   代理服务器

Completed 3200 requests

率先条准绳:就算不测量试验品质,优化就无从提及。

-y attributes   String to insert as tr attributes

Apache中有个自带的,名叫ab的次序,能够对Apache或其余项指标服务器进行网址访问压力测量试验。

上面我们重申于多少个变量,权衡它们对品质带来的影响。

复制代码 代码如下:

75% 328

-V              查看ab版本

在Linux系统,日常设置好Apache后方可平昔实践;

Failed requests:        0  //战败的央浼数量

-h Display usage information (this message)

-z attributes   String to insert as td or th attributes

设假设Win系统下,张开cmd命令行窗口,cd到apache安装目录的bin目录下;

Server Software:        Microsoft-IIS/6.0  //Microsoft-IIS服务器版本6.0

-p postfile File containing data to POST

-n requests     全部央求数

//在测验会话中所实行的乞求个数(此次测量检验总共要访谈页面包车型地铁次数卡塔 尔(英语:State of Qatar)。私下认可时,仅履行多个呼吁。

Time per request:       13547.775 [ms] (mean)  //平均事务响适那时候候间 ,前边括号中的 mean 表示那是四个平均值

-y attributes String to insert as trattributes

-e filename     Output CSV file with percentages served

98% 9267

首先大家要获取Apache服务器的目录下bin的路线,笔者Computer中的路线是D:wampbinapacheApache2.2.21bin,打开cmd,转到那些目录下,在里面输入:ab -n 10 -c 10 //www.jb51.net/ 那条指令,那条指令的意思是:ab -n 全体诉求数 -c 并发数 测验U福睿斯L。这里值得注意的是,假若您的测验UCR-VL是一个网址的网站,请记得在其后拉长/,不然会不可能职业。

# ab -n 4000 -c 1000

HTML transferred:       326390 bytes  //整个场景中的HTML内容传输量

当然,还或者有其余三款轻量级工具,此前分享过,去翻翻。

Connect:        1    2   0.8      2       3

#战败的央求数量

  80%   4008

-T content-type Content-type header forPOSTing

D:wampbinapacheApache2.2.21bin>ab -n 10 -c 10 //www.jb51.net/

Finished 4000 requests

复制代码 代码如下:

Percentage of the requests served within acertain time (ms)

Copyright 1996 Adam Twiss, Zeus Technology Ltd,

稍等一会拿到相似如下展现结果:

-i              Use HEAD instead of GET

-c concurrency Number of multiple requeststo make

                are a colon separated username and password.

-d Do not show percentiles served table.

  66%   3074

Complete requests: 4000

Total:       2164 3983 3420.0   2959   13541

#任何进度中的网络传输量

              min  mean[ /-sd] median   max

投机测量试验使用也须留意,不然一遍上太多的负荷,或者以致指标服务器因财富耗完,严重时以致招致死机。

-A attribute    http验证,分隔传递客商名及密码

# ab -c 5000 -n 600

以下是笔者运转的结果:

-V Print version number and exit

服务器负荷太大而影响程序效用是很广泛的,Apache服务器自带有五个叫ab(ApacheBench)的工具,在bin目录下。ab特意用来HTTP Server的benchmark testing,能够何况效仿七个冒出央浼,使用那一个轻松的工具大家得以对服务器进行负载测量试验。

Completed 2400 requests

-w              Print out results in HTML tables

ApacheBench用法详明:

-v verbosity    How much troubleshooting info to print

This is ApacheBench, Version 2.3

  98%  13541

Completed 4000 requests

//以下是整个场馆中负有诉求的响应意况。在气象中各类央浼都有三个响合时间,个中50%的客户响适此时间低于2959纳秒,66% 的客户响合时间低于3074微秒,最大的响合时间低于13541 微秒。由于对于现身央浼,cpu实际上并非还要管理的,而是遵照每一种央求拿到的时日片每个轮转管理的,所以基本上第五个提姆e per request时间相当于第一个Time per request时间乘以并发央浼数。

Document Length: 50797 bytes

Total transferred:      331070 bytes  //整个场所中的网络传输量

对此现身需要,cpu实际上并非同一时间处理的,而是据守每一个乞请获得的光阴片各个轮转管理的,所以基本上第三个Time per request时间相当于首个Time per request

  95%  13541

-X proxy:port Proxyserver and port numberto use

Processing:  2163 3981 3420.2   2957   13540

are a colon separated username andpassword.

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

Completed 2800 requests

-k              Use HTTP KeepAlive feature

ApacheBench命令原理:

This is ApacheBench, Version 2.3 <$Revision: 655654 $>

-z attributes String to insert as td or thattributes

  99%  13541

80% 373

Server Hostname:        www.jb51.net  //服务器主机名

Requests per second: 337.67 [#/sec] (mean)

 100%  13541 (longest request)

网站质量压力测量试验是性质调优进度中至关重要的风流罗曼蒂克环。独有让服务器处在高压状态下能力确实呈现出各个设置所揭露的主题素材。

Time per request:       1354.777 [ms] (mean, across all concurrent requests)  //各个乞请实际运作时刻的平均值

Benchmarking 192.168.80.157 (be patient)

Server Port:            80  //服务器端口
Document Path:          /  //测量试验的页面文书档案

//包涵了索要POST的数据的文书,文件格式如“p1=1&p2=2”.使用格局是 -p 111.txt 。 (同盟-T卡塔 尔(英语:State of Qatar)

-t timelimit    最传等待答复时间

Licensed to The Apache Software Foundation,

Waiting:     1305 3204 3595.3   2096   13169

唤醒:能够依附session实现原理传递 JSESSIONID参数, 达成保险会话的法力,如

Licensed to The Apache Software Foundation,
Benchmarking www.jb51.net (be patient)…..done

-C ” c1=1234,c2=2,c3=3,JSESSIONID=FF056CD16DA9D71CB131C1D56F0319F8″ 。

Complete requests:      10  //完结的央求数量

#漫天场景中保有央浼的响应情状。在情景中各类须要都有一个响适当时候间,此中50%的用户响适当时间低于275纳秒,66%的客商响合时间低于298纳秒,最大的响应时间低于11843纳秒。

-T content-type POST Content-type

-g filename Output collected data tognuplot format file.

-p postfile     POST数据文件

Total transferred: 204586997 bytes

几方今在信用合作社也用它作一些测验,以后整合治理了下它的有的事物共享下。

结果解析:

-S              Do not show confidence estimators and warnings.

100% 11843 (longest request)

-H attribute    加入http头, eg. ‘Accept-Encoding: gzip'

//测量检验所实行的最大秒数。其里面隐含值是-n 50000。它能够使对服务器的测量试验限定在一个一定的总时间之内。暗许时,未有的时候间节制。

  50%   2959

Server Port: 80

-C attribute    加入cookie, eg. ‘Apache=1234. (repeatable)

Server Hostname: 192.168.80.157

Document Length:        32639 bytes  //文书档案大大小小
Concurrency Level:      10  //并发数

//以HTML表的格式输出结果。暗中认可时,它是青灰背景的两列宽度的一张表。

                Inserted after all normal header lines. (repeatable)

-P attribute Add Basic ProxyAuthentication, the attributes

-h              Display usage information (this message)

老徐有话说:

-P attribute    Add Basic Proxy Authentication, the attributes

-n前边的4000表示一同发生4000个央浼;

-x attributes   String to insert as table attributes

Time per request: 2961.449 [ms] (mean)

复制代码 代码如下:

-n requests Number of requests to perform

Time taken for tests:   13.548 seconds  //整个测量检验持续的日子

Total: 139 1039 2296.6 275 11843

Requests per second:    0.74 [#/sec] (mean)  //每秒事务数 ,后边括号中的 mean 表示那是三个平均值

-t timelimit Seconds to max. wait forresponses

-d              Do not show percentiles served table.

//POST数据所选用的Content-type头消息,如 -T “application/x-www-form-urlencoded” 。 (同盟-p卡塔尔国

-g filename     Output collected data to gnuplot format file.

#种种连接须求实际运作时刻的平均值

  90%  13541

参数超多,平日我们用 -c 和 -n 参数就能够了。比方:

Write errors:           0

#测量试验的页面

上边是ab的授命中参数的牵线:

Completed 2000 requests

-w Print out results in HTML tables

99% 11713

#平均每秒互联网上的流量,能够支持清除是不是留存互联网流量过大导致响适那时候间延长的难点

#互联网上海消防耗的日子的解释,每一项数据的求实算法还不是很清楚

Connect: 0 483 1773.5 11 9052

are a colon separated username andpassword.

-c后边的1000象征得纳1000个冒出(模拟1000民用同期做客卡塔 尔(阿拉伯语:قطر‎,前边的网站表示测量试验的靶子U奥迪Q7L。

Document Path: /phpinfo.php

#最注重的目标之二,约等于L本田CR-V中的平均事务响合时间,前边括号中的mean表示那是三个平均值

Transfer rate: 16866.07 [Kbytes/sec]received

格式:ab [options][

90% 3260

#总体育项目质量评定试持续的岁月

Write errors: 0

Completed 1600 requests

-H attribute Add Arbitrary header line, eg.‘Accept-Encoding: gzip’ Inserted after all normal header lines. (repeatable)

Connection Times (ms)

-x attributes String to insert as tableattributes

风乐趣的同桌能够协和去心得下;

50% 275

Copyright 1996 Adam Twiss, Zeus TechnologyLtd,

Time taken for tests: 11.846 seconds

Waiting: 1 515 1459.8 220 11756

-e filename Output CSV file withpercentages served

//-C cookie-name=value 对乞请附加二个Cookie:行。 其独立格局是name=value的八个参数对。此参数能够重复,用逗号分割。

min mean[ /-sd] median max

Failed requests: 0

#达成的伸手数量

95% 9075

参数表明:

Completed 1200 requests

Completed 400 requests

Completed 3600 requests

-v verbosity How much troubleshooting infoto print

//-P proxy-auth-username:password 对三个转变代理提供BASIC认证信赖。客商名和密码由三个:隔绝,并以base64编码情势发送。无论服务器是不是须求(即, 是不是发送了401表达必要代码),此字符串都会被发送。

//三次发出的号召个数(并发数卡塔 尔(阿拉伯语:قطر‎。默许是一次三个。

#测量检验的并发数

// 执行HEAD请求,而不是GET。

Concurrency Level: 1000

-S Do not show confidence estimators andwarnings.

Server Software: Apache/2.2.15

-i Use HEAD instead of GET

HTML transferred: 203479961 bytes

ab命令会创制相当多的面世访谈线程,模拟多个访谈者同一时候对某风姿罗曼蒂克UEscortL地址举办访谈。它的测验指标是凭借U奥迪Q5L的,由此,不仅能够用来测验Apache的载荷压力,也能够测量检验nginx、lighthttp、tomcat、IIS等别的Web服务器的下压力。

Processing: 2 556 1459.1 255 11763

-A attribute Add Basic WWW Authentication,the attributes

特轻易易上手的轻量级压力测量检验小程序,后法文化概念遍布和参数详细明白;

#页面大小

-k Use HTTP KeepAlive feature

66% 298

#全数进度中的HTML内容传输量

Time per request: 2.961 [ms] (mean, acrossall concurrent requests)

#最根本的指标之大器晚成,相当于L福特Explorer中的每秒事务数,前边括号中的mean表示这是八个平均值

ab命令对产生负载的Computer要求相当的低,既不会占有相当高CPU,也不会占用比非常多内部存款和储蓄器,但却会给指标服务器形成庞大的载重,其规律雷同CC攻击。

Completed 800 requests

本文由时时app平台注册网站发布于彩世界网址,转载请注明出处:Web性能压力测试工具之ApacheBench(ab)详解及概念

关键词: