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

发布于 2024-07-05 10:14:26 字数 1524 浏览 11 评论 0 原文

我正在尝试使用 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

当执行客户端时,我收到此错误:主客户端线程连接尝试 0 失败。 Error = 10061

这个世界上有人用过WCAT吗?

I'm trying to setup a stress/load test using the WCAT toolkit included in the IIS Resources.

Using LogParser, I've processed a UBR file with configuration. It looks something like this:

    [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" 

Does it look OK?

I execute the controller with this command: wcctl -z StressTest.ubr -a localhost

The Client(s) is executed like this: wcclient localhost

When the client is executed, I get this error: main client thread Connect Attempt 0 Failed. Error = 10061

Has anyone in this world ever used WCAT?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

久而酒知 2024-07-12 10:14:27

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

OpenSTA and JMeter looks very Apache like. I'm running IIS on Windows Server 2003.

千寻… 2024-07-12 10:14:27

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

for performance counter you can define -p .prf in the same command run for controller as:
wcctl -c config.txt -d distribution.txt -s script.txt -a localhost - p performance.prf

孤单情人 2024-07-12 10:14:27

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

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

I don't have an answer for you, but have you considered using other tools for your testing? The WCAT tools seems pretty limited and complicated to use.

OpenSTA and JMeter are good open source tools for load/stress/performance testing.

旧故 2024-07-12 10:14:26

我刚刚开始评估 wcat 6.3,恐怕我的在线支持/社区体验有点令人失望。

wcat.wsf 脚本中还有一个主要错误 - 请参阅:

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

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

I've just started evaluating wcat 6.3 and I'm afraid my experience has been a bit disapointing in terms of online support/community.

There is also a major bug in the wcat.wsf script - see:

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

I'm now struggling with getting performance counter measurement working.

-黛色若梦 2024-07-12 10:14:26

尽管我在模拟 NTLM 连接方面遇到了困难,但我在 WCAT 方面取得了巨大成功。

我使用的是 6.3,所以我的配置文件看起来与你的非常不同。 我一路上注意到的一些问题:
+ 确保您已关闭防火墙,或为 WMI 打通漏洞。
+ 您在请求标头中设置的每项内容都会对吞吐量产生巨大影响。 苹果之间必须具有相同的请求标头。
+ 只有在纠正 sthorogood 发现的错误后,与多个客户端的远程调用才有效。

当我跨过这些障碍后,我在 WCAT 中取得了很好的成绩。 它的测试快速、可重复且积极。

祝你好运,

凯文

I've had good success with WCAT, though I'm struggling with simulating NTLM connections.

I'm using 6.3, so my config files look very different from yours. Some gotchas I noted along the way:
+ Make sure you've got your firewall turned off, or holes punched through for WMI.
+ Each thing you set in the request header has a tremendous impact on throughput. Apples to apples must have the same request headers.
+ Remote calls with multiple clients work only after correcting the bug identified by sthorogood.

Once I crossed those hurdles, I got great results from WCAT. It tests quickly, repeatably, and aggressively.

Best of luck,

Kevin

亽野灬性zι浪 2024-07-12 10:14:26

我会考虑更新到 WCat 6.3 - 可用 此处适用于 x86此处对于 x64

他们更改了设置/场景文件结构,这有点痛苦,但应该适合您的需求。

I'd look at updating to WCat 6.3 - available here for x86 and here for x64

They've changed the settings/scenario file strucutures, which is a little painful, but should suit your needs.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文