一、下载,解压缩
reistlin:~# wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz
reistlin:~# tar -zxvf webbench-1.5.tar.gz
reistlin:~# cd webbench-1.5
二、配置编译文件:Makefile 自定义安装路径
reistlin:~# vim Makefile
# 自定义安装路径,默认安装路径:/usr/local/
PREFIX?= /home/reistlin/webbench
三、安装 ctags
reistlin:~# apt-get install ctags
或者下载 ctags-5.8.tar.gz 编译安装
reistlin:~# wget http://prdownloads.sourceforge.net/ctags/ctags-5.8.tar.gz
注意!如果不安装 ctags make 编译会报错:/bin/sh: ctags: command not found
ctags *.c
/bin/sh: ctags: command not found
make: [tags] Error 127 (ignored)
四、编译,编译安装
reistlin:~# make
reistlin:~# make install
五、make install 如果出现错误提示:No such file or directory
install -m 644 webbench.1 /home/reistlin/webbench/man/man1
install: cannot create regular file `/home/reistlin/webbench/man/man1': No such file or directory
make: *** [install] Error 1
使用 mkdir -p 手动建立目录:
reistlin:~# mkdir -p /home/reistlin/webbench/man/man1
最后,重新执行 make install 完成安装。
建议,为方便以后调用,可以做一个 symbolic links:
reistlin:/home/reistlin/webbench# ln -s ./bin webbench
六、网站,Web压力测试:
reistlin:~# ./webbench -c 500 -t 30 http://www.reistlin.com/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://www.reistlin.com/
500 clients, running 30 sec.
Speed=122530 pages/min, 1065157 bytes/sec.
Requests: 61259 susceed, 6 failed.
七、使用
7.1
[root@hexuweb102 webbench-1.5]$ webbench --help
webbench [option]... URL
-f|--force Don't wait for reply from server.
-r|--reload Send reload request - Pragma: no-cache.
-t|--time <sec> Run benchmark for <sec> seconds. Default 30.
-p|--proxy <server:port> Use proxy server for request.
-c|--clients <n> Run <n> HTTP clients at once. Default one.
-9|--http09 Use HTTP/0.9 style requests.
-1|--http10 Use HTTP/1.0 protocol.
-2|--http11 Use HTTP/1.1 protocol.
--get Use GET request method.
--head Use HEAD request method.
--options Use OPTIONS request method.
--trace Use TRACE request method.
-?|-h|--help This information.
-V|--version Display program version.
## 测试使用如下:
[root@hexuweb102 webbench-1.5]$ webbench -c 500 -t 30 http://127.0.0.1/phpinfo.php
</n></n></server:port></sec></sec>
参数说明:-c表示并发数,-t表示时间(秒)
7.2 测试结果示例:
[root@hexuweb102 webbench-1.5]$ webbench -c 200 -t 30 http://127.0.0.1/phpinfo.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://dev3.smarter.com.cn/index.php
200 clients, running 30 sec.
Speed=1294 pages/min, 3221114 bytes/sec.
Requests: 647 susceed, 0 failed.
举个查看每分种处理多少pages的测试例子,计划压力测试2小时:
方法是使用Web Bench进行并发压力测试,选择的页面是phpinfo.php,并发请求开始5个,每次循环增加5个进入下轮的循环,每一轮循环持续180s,到达最大200个并发时结束。这样就可以持续做2小时的测试。
[root@hexuweb102 webbench-1.5]$ for n in `seq 5 5 50` ; do echo -n $n " " ; webbench -c $n -t 60 http://127.0.0.1/phpinfo.php 2>/dev/null | grep Speed | awk '{print $1}' | awk -F= '{print $2}' ; echo ; done
# 可以得到下面数据:
clints Pages/Min
5 6824
10 6888
15 6849
20 6867
25 6892
30 6865
35 6846
40 6739
45 6699
50 6880
55 6831
60 6861
65 6847
70 6852
75 6818
80 6813
85 6858
90 6825
95 6840
100 6893
100 6871
105 6858
110 6890
115 6866
120 6893
125 6912
130 6857
135 6892
140 6874
145 6868
150 6891
155 6862
160 6893
165 6877
170 6872
175 6899
180 6855
185 6900
190 6882
195 6890
200 6904