Web性能压力测试工具-Webbench

Webench

Webench是一款LInux轻量级的网站测压工具,最多可以对网站模拟3w左右的并发请求,可以控制时间、是否使用缓存、是否等待服务器回复等等,且对中小型网站有明显的效果,基本上可以测出中小型网站的承受能力,对于大型的网站,如百度、淘宝这些巨型网站没有意义,因为其承受能力非常大。同时测试结果也受自身网速、以及自身主机的性能与内存的限制,性能好、内存大的主机可以模拟的并发就明显要多。

Webbench能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webbench的标准测试可以向我们展示服务器的两项内容:每秒钟相应请求数每秒钟传输数据量。webbench不但能具有针队静态页面的测试能力,还能对动态页面比如ASP,PHP,JAVA,CGI进行测试的能力。还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试。

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

Webbench实现的核心原理

Webbench实现的核心原理是:父进程fork若干个子进程,每个子进程在用户要求时间或默认的时间内对目标web循环发出实际访问请求,父子进程通过管道进行通信,子进程通过管道写端向父进程传递在若干次请求访问完毕后记录到的总信息,父进程通过管道读端读取子进程发来的相关信息,子进程在时间到后结束,父进程在所有子进程退出后统计并给用户显示最后的测试结果,然后退出。

安装和使用

1.软件下载&安装:

wget wget http://www.ha97.com/code/webbench-1.5.tar.gz

tar xf  webbench-1.5.tar.gz

yum install gcc*  ctags* -y

make && make install 

2.使用
使用一个终端运行自己的程序,另开一个终端用来使用webench测试。

每分钟(60秒)测试1000个并发量

./webbench -c 1000 -t 60 http://IP:port/index.html

-c 表示并发数
-t 表示运行测试URL的时间(秒)

结果

Speed=3230 pages/min, 11614212 bytes/sec.
Requests: 913 susceed, 87 failed.

注意总结

1)webbench 做压力测试时,该软件自身也会消耗CPU和内存资源,为了测试准确,请将 webbench 安装在别的服务器上。

2)压力测试工作应该放到产品上线之前,而不是上线以后

3)测试时并发应当由小逐渐加大,比如并发100时观察一下网站负载是多少、打开页面是否流畅,并发200时又是多少、网站打开缓慢时并发是多少、网站打不开时并发又是多少;

4)更详细的进行某个页面测试,如电商网站可以着重测试购物车、推广页面等,因为这些页面占整个网站访问量比重较大。

安全隐患

由于Webench使用简单,也可能会一些人士利用来做一些不好的事。
1)首先,它仅属于发送 GET 命令、所以无论是 CDN 还是自身防火墙都不会将它当做是 DDOS 或 CC 看待,也就意味着不会起到防御的功能。这样的压力测试工具还包括有 Apache Bench 等比较常见(只要有 SSH 的网站主机、几乎都可以使用)

2)解决办法未必管用,即时你拒绝该测试发起着 IP 的访问、顶多只是起到了缓解的效果。因为你的错误页足够让它成千上万的测试数量吃饱喝足。

3)使用过于简单,对于繁杂且使用人数越来越少的 TFN2K 之类较为专业的工具、Webbench 只要是一个有 VPS 的小白即可使用,带宽越大、性能越好的 VPS 可以起到越大的“攻击”效应

https://www.jianshu.com/p/dc1032b19c8d
https://www.jianshu.com/p/7ebebf2cde1a
http://www.ha97.com/tag/webbench
官方主页

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值