负载测试网站。需要什么?

时间:2010-11-02 21:48:21

标签: asp.net-mvc-2 load-testing

我们即将在不久的将来发布一个ASP.net MVC网站。我正在完成功能测试,现在进行性能和负载测试。

我的问题是负载测试适合多少?它将是一个高流量的网站。我看着购买neoLoad但成本很疯狂。但似乎没有那么多其他良好的负载测试软件包可以同时测试1000多个用户。

任何建议都将受到赞赏。

提前致谢

4 个答案:

答案 0 :(得分:1)

您是否研究过Visual Studio的负载测试组件? 您需要获得2010年Ultimate Edition或2008年测试版或全套件的许可证。

Visual Studio 2010是一个更好的版本,因为许可证组件(Visual Studio Load Test Virtual User Pack 2010)允许1000个用户分布在物理系统上,从而为每个虚拟用户提供足够的马力。

Visual Studio 2010 Ultimate Edition确实配备了250个虚拟用户,我们的服务器(2.93GHz,2个处理器24GB内存)能够使用该工具生成1300 https请求/秒。

您需要的负载测试量与应用程序缓慢的风险水平成正比。

我强烈建议您使用Visual Studio作为负载测试工具。 查看Performance Sessions 有关更多信息和提示,Ed Glas's blog是一个很好的来源。

答案 1 :(得分:1)

很难说需要多少负载测试。这个项目有多重要?如果网站在推出时发生故障会有什么影响?如果网站在高容量下非常慢,该怎么办?只有您和您的组织才能回答需要进行多少测试。答案应该基于失败的成本,而不是基于网站的感知简单性/复杂性。我们已经看到许多看似简单的网站在负载下失败了。

假设成功的网站发布相对重要,至少对你而言,我建议:

  1. 确定占峰值流量负载的75%的工作流程。
  2. 绝对最低限度,尝试模拟这些测试用例的页面请求
  3. 请确保正确考虑思考时间。思考时间是页面请求之间的时间 - 当用户正在阅读页面或填写表单时。认为太长或太短的时间会极大地影响页面请求率,从而影响测试结果。如果可能,请使用随机思考时间。
  4. 由于大多数Web服务器非常有效地处理静态内容,因此很容易忽略对静态资源的请求。但是如果你有前端负载均衡器,缓存服务器等,用这些静态资源进行测试是非常重要的 - 我不能告诉你我们在这个区域看到过多少次网站崩溃。
  5. 负载测试软件有很多替代方案(我们的Load Tester产品类似于NeoLoad,但价格较便宜),但请确保您考虑到全部成本 - 即获取它所需的小时数工作。这些工具在生产力方面存在很大差距。像 ab JMeter 这样的工具几乎没有前期成本,但在尝试模拟针对复杂Web应用程序(例如典型的.NET应用程序)的流量时,可能会很快变得昂贵。

    您也可以考虑外包负载测试。在所有开发活动中,负载测试可能是最容易外包的(我们每天都会这样做)。

答案 2 :(得分:1)

如果我们有基础架构设置来支持它,我们已经转向使用基于云的内容,例如browsermob。它比大多数其他基准测试更加真实,特别是对于端到端的性能。

答案 3 :(得分:0)

试试ab。它专为测试Apache而设计,但应该适用于任何Web服务器。