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

时间:2009-04-28 12:46:56

标签: java web-applications tomcat stability

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

我们想为合作伙伴承包商编写一个非常简单的测量方法。我们考虑了一些想法:

  • 能够识别高负载请求并提供服务器不可用的系统重试页面,直到它从高负载恢复。
  • 一定数量的用户并发或网页浏览,可让我们明确了解何时使用负载均衡器和缓存等可扩展性选项。

此时我们必须使用缓存和负载平衡,以便每x小时(取决于负载)回收Web应用程序,这样它们就不会不断死亡。

感谢您的帮助。

3 个答案:

答案 0 :(得分:5)

“高负荷”很难定义。

您可以更轻松地确定最低可接受的服务级别。

  1. 最小并发请求数。

  2. 提供请求的最长时间。

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

  4. 这样的简单服务级别易于衡量,易于模拟并易于写入合同。任何律师或会计师都可以查看负载测试的结果,并说他们确实达到或未达到最低要求。根本不需要深入的技术知识。

    请注意,执行此操作时,“最小值将变为最大值”。如果你说他们必须每小时至少提供10,000个请求,那么你的测试通常也会显示出最大值。

    因此,请从您的业务模型中定义最小值和最大值。你需要多少人来保持快乐和富有成效?要求更多是愚蠢的。要求更少的人意味着不满意或没有生产力的用户。

答案 1 :(得分:0)

通常,我已经看到规范中内置的这些性能类型要求......“系统应该支持x个并发用户数”或“每小时x个请求数”。

使用像LoadRunner这样的东西可以很容易地测试和验证这些东西,或者你可以使用类似HttpUnit的东西来滚动你自己的类似负载测试器。

答案 2 :(得分:0)

您需要的是以下参数:

  1. 负载测试:

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

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

  2. 可持续性:

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

  3. 您还可以尝试扩展性,您可以在其中逐步添加硬件并监控应用程序的行为。

    这可以让您对系统的行为有一个正确的理解。