SuperWebBenchWEB服务器性能/压力测试工具

联合创作 · 2023-10-01 20:47

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、重新组织了下代码结构,使得阅读更方便

 

安装:

 

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. 

 

常见问题:

 

ctags *.c

/bin/sh: ctags: command not found

make: [tags] 错误 127 (忽略)

 

ok,是在centos下没自动安装ctags命令,于是yum install ctags,安装成功。

浏览 7
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报