2

我为我的网站创建了一个 Web 负载测试,从 1 个用户增加到 300 个用户。测试中记录的性能令人发指,完全超出了我能想象的最差性能的规模——想象一个简单的登录脚本的响应时间长达 10 分钟!

我的直接怀疑在于我在一台计算机上模拟 300 个客户端。我猜我自己的计算机的处理能力和互联网带宽比服务器更成为瓶颈。

有没有更好的方法来测试我的网站的性能,从而产生更真实的结果?

4

1 回答 1

2

首先,您可以在开发人员机器上运行负载测试,但通常不建议将其用于大型负载测试:您的机器将托管一个网站,运行负载测试,模拟虚拟用户,将测试结果存储在本地数据库中......很容易理解,你的机器会成为你负载测试的瓶颈。它只适用于小烟雾测试。

为了模拟大量用户,您将设置所谓的负载测试装置。如果可能,请尝试将您的网站托管在单独的机器上,并使用 TestController 和代理。控制器管理和协调代理机器,并且代理针对应用程序(托管在其他地方)生成负载。

我已经使用 Visual Studio 负载测试 2 年了,我发现它非常强大且易于使用。还有许多隐藏的未记录的特性/属性,这些特性/属性对理解非常重要

  • 新用户百分比和缓存控制
  • 迭代之间的思考时间
  • 远程测试设置(不收集 Intellitrace,或运行 asp.net 分析会话)...

其中一些在此处列出。

我通常也不使用步进模式运行负载测试,而是使用基于目标的模式,目标是 Web 服务器上的 50% CPU。

于 2013-07-09T07:14:07.840 回答