在一个网站上线前, 通常我们应该做一些相关的压力测试, 以便了解当前Web服务器在高并发高负载情况下的响应状况和速度,方便对Web服务器进行优化和重构。 免费的web压力测试工具有很多种,例如:Grinder、Pylot、Web Capacity Analysis Tool (WCAT)、fwptt 、JCrawler、Apache JMeter、Siege、http_load等等,而在真实项目中使用做多的是 Apacheab和Webbench来完成压力测试。(https://coolshell.cn/articles/2589.html)


  • Apache ab做压力测试

优点:Apache的ab使用非常简单, 而且只要是安装了Apache了,就会自带其ab工具; 缺点:就是不能模拟高并发状态下的测试, 好像最多可以模拟100-200次/秒的并发. 如果需要模拟更高负载的压力测试, 就需要使用Webbench。

  • webbench做压力测试

优点: 

 ① 能测试相同硬件上不同服务的性能及不同硬件上同一个服务的运行状况;

 ② 它的标准测试可以向我们展示服务器的两项内容:每秒钟相应请求数和每秒钟传输数据量; 

 ③ 支持静态页面、动态页面(如:ASP、PHP、JAVA、CGI)、SSL协议的测试能力;

 ④ webbench最多可以模拟3万个并发连接去测试网站的负载能力;

 缺点: 测试的结果太简单;

如何安装使用 webbench

## 安装依赖包
 yum install ctags wget apr* autoconf automake gcc gcc-c++ -y
## 下载并安装webbench工具
 wget http://blog.zyan.cc/soft/linux/webbench/webbench-1.5.tar.gz
 tar fxz webbench-1.5.tar.gz 
 cd webbench-1.5
 make && make install

make编译时报错:

linux下web网站压力测试工具webbench_第1张图片


解决方法: 手工创建目录


mkdir -m 644 -p /usr/local/man/man1


报错: make: [tags] Error 127 (ignored)

解决方法: yum install ctags 


使用方法


webbench -c 1 -t 30 http://127.0.0.1/index.html


参数说明: -c <并发数>   -t  < 持续时间>


linux下web网站压力测试工具webbench_第2张图片


使用时报错

错误代码: Connect to server failed. Aborting benchmark.

说明: 连接到服务器的socket标识

解决: 检查nginx启动端口号【指定端口错误】