代码之家  ›  专栏  ›  技术社区  ›  Geo

什么是Web应用程序稳定性的良好标准度量标准?

  •  1
  • Geo  · 技术社区  · 17 年前

    我们目前在开发Web应用程序产品时面临一些稳定性问题。该产品是由我们的合作伙伴承包商部分构建的,我们希望有一个良好的稳定性标准度量。我们一直面临的问题是不断的崩溃。Web应用程序无法识别什么时候有超过它所能处理的请求,它会建立内存(如内存泄漏),然后在没有任何可能的恢复的情况下死亡。

    我们想写一个非常简单的衡量标准,供我们的合作伙伴承包商满足。我们考虑了一些想法:

    • 一个能够识别高负载请求并服务于服务器不可用的系统,请重试页面,直到它从高负载中恢复。
    • 一组并发用户或页面视图,允许我们明确度量何时使用可伸缩性选项,如负载平衡器和缓存。

    现在,我们必须使用缓存和负载平衡,以便能够每隔x小时(取决于负载)回收Web应用程序,这样它们就不会经常死掉。

    谢谢你的帮助。

    3 回复  |  直到 17 年前
        1
  •  5
  •   S.Lott    17 年前

    “高负荷”真的很难定义。

    对于您来说,确定最低可接受的服务级别要容易得多。

    1. 最小并发请求数。

    2. 服务请求的最长时间。

    3. 每小时的最小请求数。

    像这样简单的服务级别很容易度量,易于模拟,并且易于写入合同。任何律师或会计师都可以审查负载测试的结果,并说他们是否达到了最低要求。根本不需要深入的技术知识。

    注意,当你这样做时,“最小值变成最大值”。如果您说他们必须每小时至少服务10000个请求,那么您的测试通常也会发现这是最大值。

    所以从你的商业模式中定义你的最小值和最大值。你需要多少来保持人们的快乐和富有成效?要求更多是愚蠢的。要求更少意味着不快乐或不生产的用户。

        2
  •  0
  •   Vinnie    17 年前

    通常,我已经看到这些性能类型需求嵌入到规范中……”系统应支持x个并发用户数“或”x个每小时请求数“。

    这些东西可以很容易地使用LoadRunner之类的工具进行测试和验证,或者您也可以使用httpUnit之类的工具来滚动您自己类似的负载测试仪。

        3
  •  0
  •   Satya    17 年前

    您需要以下参数:

    1. 负载测试:

      i)评估您的应用程序使用行为。(即)预期的并发用户数量,典型用户活动

      ii)逐步加载应用程序,并查看诸如CPU使用率、响应时间、吞吐量等参数。

    2. 持续性:

      在相当长的时间内(12-24小时)加载应用程序(以最佳负载),并查看相同的参数CPU使用率、错误级别等。

    您还可以尝试可伸缩性,在这里您可以增加硬件并监视应用程序的行为。

    这将使您对系统的行为有一个相当好的理解。