WEB服务器性能/压力测试工具 SuperWebBench
SuperWebBench 是由webbench改进而来的一款简单易用的web性能测试工具.
背景:
webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便。
webbench是基于GPL授权协议的,我自然可以取得源码修改,然后作为superwebbench这个项目发布。
简介:
SuperWebBench 是由webbench改进而来的一款简单易用的web性能测试工具
SuperWebBench 是依照GPL V2.0发布的
SuperWebBench是遵循POSIX标准的C语言编写的程序
主要改动如下:
1、更正connect()服务器失败时,不能close()的bug
2、使用多线程代替多进程,提供更高的效率
3、自动资源限制检测和设置(线程数和打开文件数限制)
4、测试时间到达后,快速关闭套接字,不用再等待服务器响应(在WAN的情况下,这会占用很多时间)
5、加入了检测HTTP响应号的功能,这样就可以分辨HTTP是否返回了正确的信息(HTTP2XX)
6、重新组织了下代码结构,使得阅读更方便
在linux centos 5.x 下安装通过,安装过程:
1 2 3 4 5 | yum -y install ctags wget https://github.com/downloads/xutongle/SuperWebBench/superwebbench.tar.gz tar zxvf superwebbench.tar.gz cd superwebbench make && make install |
superwebbench -c 500 -t 30 http://127.0.0.1/test.jpg
参数说明:-c表示并发数,-t表示时间(秒)
测试结果示例:
SuperWebBench – Advanced Simple Web Benchmark 0.1
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Modified By Davelv 2011-11-03
Benchmarking:GET http://127.0.0.1/test.jpg (using HTTP/1.1)
500 clients, running 30 sec.
Speed=5887 pages/sec, 1862058 bytes/sec.
Requests: 0 ok, 176220 http error, 405 failed.
示范:
superwebbench
superwebbench [option]… URL
-f|–force Don’t wait for reply from server.
-r|–reload Send reload request – Pragma: no-cache.
-t|–time Run benchmark for seconds. Default 30.
-p|–proxy Use proxy server for request.
-c|–clients Run 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.