webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好用,安装使用也特别方便,并且非常小。
一,环境:linux
二,安装方式:编译安装
具体步骤如下:
1,安装编译工具:
<code>[root@zabbix </code><code>install</code><code>]</code><code># yum install ctags wget make apr* autoconf automake gcc gcc-c++</code>
2,下载该软件包
<code>[root@zabbix </code><code>install</code><code>]</code><code># wget http://home.tiscali.cz/cz210552/distfiles/webbench-1.5.tar.gz </code>
<code>--2016-07-06 19:01:29-- http:</code><code>//home</code><code>.tiscali.cz</code><code>/cz210552/distfiles/webbench-1</code><code>.5.</code><code>tar</code><code>.gz</code>
<code>Resolving home.tiscali.cz... 82.208.6.172</code>
<code>Connecting to home.tiscali.cz|82.208.6.172|:80... connected.</code>
<code>HTTP request sent, awaiting response... 200 OK</code>
<code>Length: 7675 (7.5K) [application</code><code>/x-tar</code><code>]</code>
<code>Saving to: “webbench-1.5.</code><code>tar</code><code>.gz”</code>
<code>100%[=====================================================================================>] 7,675 --.-K</code><code>/s</code> <code>in</code> <code>0s </code>
<code>2016-07-06 19:01:36 (233 MB</code><code>/s</code><code>) - “webbench-1.5.</code><code>tar</code><code>.gz” saved [7675</code><code>/7675</code><code>]</code>
3,编译安装
<code>[root@zabbix </code><code>install</code><code>]</code><code># tar zxvf webbench-1.5.tar.gz </code>
<code>webbench-1.5/</code>
<code>webbench-1.5</code><code>/webbench</code><code>.1</code>
<code>webbench-1.5</code><code>/socket</code><code>.c</code>
<code>webbench-1.5</code><code>/webbench</code><code>.c</code>
<code>webbench-1.5</code><code>/Makefile</code>
<code>webbench-1.5</code><code>/debian/</code>
<code>webbench-1.5</code><code>/debian/rules</code>
<code>webbench-1.5</code><code>/debian/dirs</code>
<code>webbench-1.5</code><code>/debian/copyright</code>
<code>webbench-1.5</code><code>/debian/control</code>
<code>webbench-1.5</code><code>/debian/changelog</code>
<code>webbench-1.5</code><code>/COPYRIGHT</code>
<code>webbench-1.5</code><code>/ChangeLog</code>
<code>[root@zabbix </code><code>install</code><code>]</code><code># cd webbench-1.5</code>
<code>[root@zabbix webbench-1.5]</code><code># mkdir /usr/local/man #创建该目录否则会失败</code>
<code>[root@zabbix webbench-1.5]</code><code># make</code>
<code>cc -Wall -ggdb -W -O -c -o webbench.o webbench.c</code>
<code>webbench.c: In </code><code>function</code> <code>‘alarm_handler’:</code>
<code>webbench.c:77: warning: unused parameter ‘signal’</code>
<code>cc -Wall -ggdb -W -O -o webbench webbench.o </code>
<code>ctags *.c</code>
<code>[root@zabbix webbench-1.5]</code><code># make install</code>
<code>install</code> <code>-s webbench </code><code>/usr/local/bin</code>
<code>install</code> <code>-m 644 webbench.1 </code><code>/usr/local/man/man1</code>
<code>install</code> <code>-d </code><code>/usr/local/share/doc/webbench</code>
<code>install</code> <code>-m 644 debian</code><code>/copyright</code> <code>/usr/local/share/doc/webbench</code>
<code>install</code> <code>-m 644 debian</code><code>/changelog</code> <code>/usr/local/share/doc/webbench</code>
4,进行压力测试
<code>[root@zabbix webbench-1.5]</code><code># webbench -c 100 -t 30 http://192.168.1.245/zabbix.php?action=dashboard.view</code>
<code>Webbench - Simple Web Benchmark 1.5</code>
<code>Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.</code>
<code>Benchmarking: GET http:</code><code>//192</code><code>.168.1.245</code><code>/zabbix</code><code>.php?action=dashboard.view</code>
<code>100 clients, running 30 sec.</code>
<code>Speed=1676 pages</code><code>/min</code><code>, 355898 bytes</code><code>/sec</code><code>.</code>
<code>Requests: 838 susceed, 0 failed.</code>
说明:-c 100:表示同时产生100个并发连接
-t 30:表示持续30秒
备注:webbench最大可以模拟30000个并发连接
实战:方法是使用Web Bench进行并发压力测试,选择的页面是http://192.168.1.245/zabbix.php?action=dashboard.view并发请求开始5个,每次循环增加5个进入下轮的循环,每一轮循环持续180s,到达最大200个并发时结束。这样就可以持续做2小时的测试。
for n in `seq 5 5 50` ; do echo -n $n " " ; webbench -c $n -t 60 http://192.168.1.245/zabbix.php?action=dashboard.view 1>/dev/null | grep Speed | awk '{print $1}' | awk -F= '{print $2}' ; echo ; done
<code>[root@zabbix webbench-1.5]</code><code># for n in `seq 5 5 50` ; do echo -n $n " " ; webbench -c $n -t 60 http://192.168.1.245/zabbix.php?action=dashboard.view 1>/dev/null | grep Speed | awk '{print $1}' | awk -F= '{print $2}' ; echo ; done</code>
<code>5 Webbench - Simple Web Benchmark 1.5</code>
<code>10 Webbench - Simple Web Benchmark 1.5</code>
<code>15 Webbench - Simple Web Benchmark 1.5</code>
<code>20 Webbench - Simple Web Benchmark 1.5</code>
<code>25 Webbench - Simple Web Benchmark 1.5</code>
本文转自 lqbyz 51CTO博客,原文链接:http://blog.51cto.com/liqingbiao/1811622