使用WCAT对ASP.NET / IIS进行压力测试

时间:2008-09-22 13:15:03

标签: asp.net iis stress-testing wcat

我正在尝试使用IIS资源中包含的WCAT工具包来设置压力/负载测试。

使用LogParser,我已经处理了配置的UBR文件。它看起来像这样:

    [Configuration]
NumClientMachines:  1        # number of distinct client machines to use
NumClientThreads:     100     # number of threads per machine
AsynchronousWait:     TRUE     # asynchronous wait for think and delay
Duration:             5m      # length of experiment (m = minutes, s = seconds)
MaxRecvBuffer:        8192K      # suggested maximum received buffer
ThinkTime:            0s       # maximum think-time before next request
WarmupTime:           5s      # time to warm up before taking statistics
CooldownTime:         6s      # time to cool down at the end of the experiment 

[Performance]

[Script]
SET RequestHeader = "Accept: */*\r\n"
APP RequestHeader = "Accept-Language: en-us\r\n"
APP RequestHeader = "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705)\r\n"
APP RequestHeader = "Host: %HOST%\r\n"

NEW TRANSACTION
    classId = 1
    NEW REQUEST HTTP
    ResponseStatusCode = 200
    Weight = 45117
    verb = "GET"
    URL = "http://Url1.com" 

NEW TRANSACTION
    classId = 3
    NEW REQUEST HTTP
    ResponseStatusCode = 200
    Weight = 13662
    verb = "GET"
    URL = "http://Url1.com/test.aspx" 

看起来不错吗?

我使用以下命令执行控制器:wcctl -z StressTest.ubr -a localhost

客户端的执行方式如下:wcclient localhost

当客户端执行时,我收到此错误:main client thread Connect Attempt 0 Failed. Error = 10061

这个世界上有没有人曾经使用过WCAT?

7 个答案:

答案 0 :(得分:2)

我想看看更新到WCat 6.3 - 可用here for x86here for x64

他们已经更改了设置/方案文件结构,这有点痛苦,但应该符合您的需求。

答案 1 :(得分:2)

我刚刚开始评估wcat 6.3,我担心我的经验在线支持/社区方面有点令人失望。

wcat.wsf脚本中也存在一个主要错误 - 请参阅:

http://forums.iis.net/t/1153312.aspx

我现在正努力让性能计数器测量工作。

答案 2 :(得分:2)

我在WCAT方面取得了很大的成功,尽管我在努力模拟NTLM连接。

我使用的是6.3,因此我的配置文件与您的配置文件非常不同。我在路上注意到了一些问题:
+确保已关闭防火墙,或为WMI打孔。
+您在请求标头中设置的每个内容都会对吞吐量产生巨大影响。苹果到苹果必须具有相同的请求标题 +多个客户端的远程调用仅在纠正sthorogood识别的错误后才能工作。

一旦我越过了这些障碍,我就从WCAT获得了很好的成绩。它可以快速,可重复和积极地进行测试。

祝你好运,

凯文

答案 3 :(得分:0)

我没有给您答案,但您是否考虑过使用其他工具进行测试? WCAT工具似乎非常有限且使用起来很复杂。

OpenSTA和JMeter是用于负载/压力/性能测试的优秀开源工具。

答案 4 :(得分:0)

OpenSTA和JMeter看起来非常像Apache。我在Windows Server 2003上运行IIS。

答案 5 :(得分:0)

答案 6 :(得分:0)

对于性能计数器,您可以在控制器的同一命令运行中定义-p .prf: wcctl -c config.txt -d distribution.txt -s script.txt -a localhost -p performance.prf