负载测试

时间:2017-05-27 21:23:03

标签: visual-studio azure nginx load-testing gateway

我有一个运行在网站页面上的Visual Studio负载测试,但在使用负载均衡器时遇到了很大的性能差异。如果我将测试直接运行到绕过负载均衡器的Web服务器1,我会得到100个用户的平均页面加载时间不到1秒的例子。如果我在负载均衡器上引导相同的测试,后面有2个Web服务器,那么我得到的平均页面加载时间大约为30秒 - 它开始很快但随后恶化。这很奇怪,因为我现在有2个Web服务器负载均衡而不是使用1直接,所以我希望能够增加负载。我现在使用Azure Web Application Gateway和Azure VM进行测试。我之前遇到过与NGinx设置相同的问题,我认为这是由于设置,但现在我发现我在Azure上也有相同的问题。任何想法都会很棒。

2 个答案:

答案 0 :(得分:1)

我必须完全禁用防火墙才能获得一致的性能。我还遇到了防火墙的其他问题,它从安全模块向我们提供了最大实体大小错误,在与Azure支持人员讨论后,无法配置此实体大小,因此保留防火墙将意味着某些大页面将不再起作用并获得这个错误。即使所有规则都被禁用,也会发生这种情况,我花了很多时间尝试不同的规则开/关。 SQL注入规则似乎不喜欢我们的ASP.NET Web表单站点。我现在模拟了在两个测试代理之间拆分的1,000个并发用户,并且性能对我们的站点有利,平均页面加载时间远低于一秒。

答案 1 :(得分:0)

以下是帮助我改善相同情况的一系列事项:

  • 添加非SSL侦听器并使用它(例如HTTP而不是HTTPS)。显然这不是建议的解决方案,但可能会给你一个提示(向后端池服务器卸载SSL?添加更多网关实例?)
  • 禁用WAF规则(略有改进)
  • 禁用WAF +添加更多网关实例(在我的情况下从2增加到4) - 解决了问题!