下载并安装WAST,过程及其简单。然后运行WAST可以看到其界面非常简洁,在对目标Web服务器进行压力测试之前,首先要对它进行一些必要的设置。
1、设置并行连接数
点击左侧的“Defaults→Settings”打开设置面板。在Concurrent Connections下进行并行连接设置。Stress level (threads)是最少线程,Stress multiplier是最大线程。这里的线程是指定程序在后台用多少线程进行请求,也就是相当于模拟多少个客户机的连接,一般填写 500~1000,因为这个线程数是根据本机的承受力来设置的,如果你对自己的机器配置有足够信心的话,那么可以设置得更高一些。(图1)
图1
2、设置持续时间
在“Test Run Time”中用来指定一次压力测试需要持续的时间,分为天、小时、分、秒几个单位级别,比如我们设置为1个小时。(图2)
图2
3、其余设置
“Rpquest Delay”设置延迟时间,我们设置为100~500。“Suspend”设置设定挂起时间,Warmup时间是初始化测试运行时间,cooldown时间就是指定结束阶段的测试时间。Bandwith”指定带宽瓶颈,允许你模拟从14.4 Kbps的modem连接到T1 (1.5 Mbps)的Local Area Network (LAN)连接的网络带宽。Redirects设置重定向时间,“Throughput”设置用户、密码页面状态保存等是否启用,“Name resolution”设置是否进行名称解析。所有以上的选项大家可以根据自己的需要进行设置。(图3)
图3
四、压力测试
设置完成后就可以进行压力测试,测试的步骤如下:
第一步:点击工具栏上的“new script”按钮在打开的面板中点击“Nanual”按钮创建一个新的测试项目。在打开的窗口中对它进行设置,在主选项中的server中填写要测试的服务器的IP地址,这里我们填写192.168.1.20,在下方选择测试的Web连接方式,这里的方式Verb选择get,path选择要测试的Web页面路径,这里填写/Index.asp即动网的首页文件,WAST可以设置更多的Path。(图4)
图4
第二步:在“Settings”的功能设置中将Stress level (threads)线程数设置为1000。完毕后,点工具中的灰色三角按钮即可进行测试。测试过程中我们可以从服务器的任务管理器中看到CPU使用率已经 达到100%,损耗率达到最大见图5。在CMD窗口中使用命令netstat -an,可以看到客户端的IP地址在服务器上的80端口进行了非常多的连接见图6,而且Web网站已经打不开了,提示过多用户连接。(图5)(图6)
图5
图6
总结:通过Web压力测试,管理员对Web服务器的抗压能力有了大概的把握,从而根据实际需要可以进行服务器硬件扩展,同时也为系统设置、软件选择等提供了依据。总括来说,在Web服务器正式发布前进行压力测试是非常必要的。