使用 WCAT 对 ASP.NET/IIS 进行压力测试
我正在尝试使用 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吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
OpenSTA 和 JMeter 看起来非常像 Apache。 我在 Windows Server 2003 上运行 IIS。
OpenSTA and JMeter looks very Apache like. I'm running IIS on Windows Server 2003.
您是否看过 Microsoft Web 应用程序压力工具?
Have you looked at the Microsoft Web Application Stress Tool?
对于性能计数器,您可以在为控制器运行的同一命令中定义 -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
我没有答案,但是您是否考虑过使用其他工具进行测试? 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.
我刚刚开始评估 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.
尽管我在模拟 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
我会考虑更新到 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.