Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。
下面是LALA的白话文版介绍:
mlgb,说的辣么好听,压力测试。。。说白了就是CC攻击,只不过是单机CC攻击罢了。。。单机CC的话,最多只能当玩具玩玩,或者说CC一些完全没技术的小白站长。只要稍微懂一点的,敲个IP连接数的命令看一下,然后iptables直接把连接数成千上万的那个IP给BAN了就行。
下面就来一起玩玩这个Webbench,还是老规矩拿出本屌的CentOS7X64,先来安装一下这个工具。
安装git:
yum -y install git
拉取WebBench项目文件:
git clone https://github.com/EZLippi/WebBench.git
进入到WebBench目录:
cd WebBench
安装:
make make install
安装完成后可以使用命令查看该工具支持的参数:
webbench
参数的使用说明:
短参 | 长参数 | 作用 |
---|---|---|
-f | –force | 不需要等待服务器响应 |
-r | –reload | 发送重新加载请求 |
-t | –time | 运行多长时间,单位:秒 |
-p | –proxy server:port | 使用代理服务器来发送请求 |
-c | –clients | 创建多少个客户端,默认1个 |
-9 | –http09 | 使用 HTTP/0.9 |
-1 | –http10 | 使用 HTTP/1.0 协议 |
-2 | –http11 | 使用 HTTP/1.1 协议 |
–get | 使用 GET请求方法 | |
–head | 使用 HEAD请求方法 | |
–options | 使用 OPTIONS请求方法 | |
–trace | 使用 TRACE请求方法 | |
-?/-h | –help | 打印帮助信息 |
-V | –version | 显示版本号 |
一般情况下,我们测试一个站点只需要用到-c和-t参数,所以测试命令如下:
webbench -c 8000 -t 120 http://www.test.com
注意在这里测试有一个小窍门:
类似这种压力测试、CC攻击,我们一定要找到目标站的动态页面,简单点说就是测试它这个站点的某个页面,这个页面是需要涉及到脚本执行或者是数据库操作的,这样就最有效果。
比如一个WordPress的站点,站点在启用了一些缓存插件后,比如SuperCache、HyperCache这类,插件一般都会将站点的大部分页面都静态化,比如首页、文章页、列表页、标签页等等。我们如果去测试这些静态页面是基本达不到什么效果的。那么这个时候我们就需要找到这个站点的动态页面。
针对WordPress这款程序而言,想全站静态化是相当难的,所以一般的插件也不可能缓存的了这几个页面:搜索结果、登录页面、XMLRPC等等。
那么LALA个人推荐测试的目标站程序是WordPress的时候,先去它的站上搜索一个关键字,然后直接测试这个搜索结果地址。。。
当然我这里只是随便举个例子,市面上大多数的站点都是没有全静态化的,找几个动态页面还是很简单的,各位可以举一反三。。。
下面是我随便找了个站点测试了下,测试完成后Webbench会回显测试的过程和结果数据:
测试过程中目标站也挂了:
然后我用来测试的VPS也挂了:
估计是线程开的太多,CPU跑太满了。。。
然后去阿里云后台执行重启命令都执行不成功,一直卡在“停止中”。。。
最后没办法只能把这台机释放了=。=
这个故事告诉我们,像这种坏事要少做,不作死就不会死。。。把别人的站打挂了,自己的VPS也跟着挂了。。。
最后恳请各位大佬高抬贵手,别搞我,呜呜呜呜呜呜呜。。。
LALA
我什么都不卖了,告辞!
最新评论
5211314
能不能教我 一点不会