Webbench网站压力测试

Webbench网站压力测试

Webbench是有名的 网站压力测试工具,能测试处在相同硬件上,不一样服务的性能以及不一样硬件上同一个服务的运行情况。webBech的标准测试能够向咱们展现服务器的 两项 内容: 每秒钟相应请求数和每秒钟传输数据量。webbench不但能具备便 静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力。还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试。
 
Webbench1.5下载地址:http://pan.baidu.com/s/1boVkWTx
解压
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
编译
make
提示须要安装gcc
[root@mvpbang webbench-1.5]# make
cc -Wall -ggdb -W -O -c -o webbench.o webbench.c
make: cc: Command not found
make: *** [webbench.o] Error 127
yum install -y gcc
提示安装ctags
[root@mvpbang webbench-1.5]# make
cc -Wall -ggdb -W -O -c -o webbench.o webbench.c
webbench.c: In function ‘alarm_handler’:
webbench.c:77:31: warning: unused parameter ‘signal’ [-Wunused-parameter]
static void alarm_handler(int signal)

cc -Wall -ggdb -W -O -o webbench webbench.o
ctags *.c
/bin/sh: ctags: command not found
make: [tags] Error 127 (ignored)
[root@mvpbang webbench-1.5]# yum install -y ctags
把编译好的二进制文件复制到bin目录
root@mvpbang webbench-1.5]# cp webbench /usr/bin
[root@mvpbang webbench-1.5]# webbench
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.
本地测试NGinx
参数说明:-c表示并发数,-t表示时间(秒)

[root@mvpbang webbench-1.5]# webbench -c 1000 -t 30 http://192.168.1.115/index.html
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.php

Benchmarking: GET http://192.168.1.115/index.html
200 clients, running 30 sec.html

Speed=492656 pages/min, 2003467 bytes/sec.
Requests: 246328 susceed, 87 failed.web

每秒钟响应请求数:492656 pages/min,每秒钟传输数据量20794612 bytes/sec.安全

当并发1000时,返回数:246328次返回成功,87个链接failed了,说明超负荷了。服务器

 

总结:
一、压力测试工做应该放到产品上线以前,而不是上线之后;
二、测试时并发应当由小逐渐加大,好比并发100时观察一下网站负载是多少、打开页面是否流畅,并发200时又是多少、网站打开缓慢时并发是多少、网站打不开时并发又是多少;
三、更详细的进行某个页面测试,如电商网站能够着重测试购物车、推广页面等,由于这些页面占整个网站访问量比重较大。
并发

 

举个查看每分种处理多少pages的测试例子,计划压力测试2小时:
方法是使用Web Bench进行并发压力测试,选择的页面是phpinfo.php,并发请求开始5个,每次循环增长5个进入下轮的循环,每一轮循环持续180s,到达最大200个并发时结束。这样就能够持续作2小时的测试。工具

[root@hexuweb102 webbench-1.5]$ for n in `seq 5 5 200` ; 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 ; donepost

# 能够获得下面数据:
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性能

相关文章
相关标签/搜索