代码之家  ›  专栏  ›  技术社区  ›  Ben McCormack

如何在Web服务器上正确地加载测试新组件?

  •  1
  • Ben McCormack  · 技术社区  · 14 年前

    我需要考虑什么来进行适当的测试,以确保我引入的新代码不会在负载下中断?


    我制作了一个简单的asp网页,根据查询字符串中的信息调用新组件。查询字符串还有一个“off switch”参数,因此我可以在没有组件作为默认值的情况下测试页面。页面本身是空的,只是返回一个值,该值表示组件是否成功、失败或被跳过。

    HttpWebRequest 在每次调用时使用数据库中的唯一数据对ASP页进行迭代调用。它所做的一切,检查页面返回的值并保存数据。

    然后我将控制台应用程序部署到我们内部网络上的四台不同的PC上。在一个测试中,我在每台计算机上设置了一个应用程序实例,在另一个实例中,我在每台计算机上设置了五个应用程序实例,并将它们配置为同时开始访问开发服务器。应用程序的每个实例向web服务器发出150个迭代请求。

    无论是否运行新组件,20个实例的测试都会给我们的开发服务器带来很大的负载,但是新组件在压力下似乎已经足够好了。但是,我想确保我的方法是正确的,并且没有指向弱测试的肯定通过,以证明我的组件在峰值负载下不会满足服务器的需要。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Nat    14 年前

    visualstudio有一个负载测试组件,但是您所做的基本上是相同的。visualstudio解决方案的好处在于,您可以看到性能的瓶颈在哪里。

    您的测试似乎足够严格,可以说“它在负载下不会中断”,但测试是在活动硬件和任何其他处理与真实页面隔离的情况下进行的,这并不能保证。

    许多的 如果在峰值负载下的实际应用程序的响应时间比您预期的要高,并且响应时间是合理的,那么您确实对测试结果有一些信心,认为它是一个真正的阳性结果。

        2
  •  1
  •   Matt DeKrey Kiran    14 年前