我为我的网站创建了一个 Web 负载测试,从 1 个用户增加到 300 个用户。测试中记录的性能令人发指,完全超出了我能想象的最差性能的规模——想象一个简单的登录脚本的响应时间长达 10 分钟!
我的直接怀疑在于我在一台计算机上模拟 300 个客户端。我猜我自己的计算机的处理能力和互联网带宽比服务器更成为瓶颈。
有没有更好的方法来测试我的网站的性能,从而产生更真实的结果?
我为我的网站创建了一个 Web 负载测试,从 1 个用户增加到 300 个用户。测试中记录的性能令人发指,完全超出了我能想象的最差性能的规模——想象一个简单的登录脚本的响应时间长达 10 分钟!
我的直接怀疑在于我在一台计算机上模拟 300 个客户端。我猜我自己的计算机的处理能力和互联网带宽比服务器更成为瓶颈。
有没有更好的方法来测试我的网站的性能,从而产生更真实的结果?
首先,您可以在开发人员机器上运行负载测试,但通常不建议将其用于大型负载测试:您的机器将托管一个网站,运行负载测试,模拟虚拟用户,将测试结果存储在本地数据库中......很容易理解,你的机器会成为你负载测试的瓶颈。它只适用于小烟雾测试。
为了模拟大量用户,您将设置所谓的负载测试装置。如果可能,请尝试将您的网站托管在单独的机器上,并使用 TestController 和代理。控制器管理和协调代理机器,并且代理针对应用程序(托管在其他地方)生成负载。
我已经使用 Visual Studio 负载测试 2 年了,我发现它非常强大且易于使用。还有许多隐藏的未记录的特性/属性,这些特性/属性对理解非常重要
其中一些在此处列出。
我通常也不使用步进模式运行负载测试,而是使用基于目标的模式,目标是 Web 服务器上的 50% CPU。