1

我正在分析一个 Web 应用程序,并想预测该应用程序可以支持的最大用户数。现在我的负载测试执行中有以下数字 1. 响应时间 2. 吞吐量 3. CPU

我有应用程序用例 SLA 响应时间 - 4 秒 CPU - 65%

当我对特定用例执行 10 个并发用户(没有思考时间)的负载测试时,平均响应时间达到 3.5 秒,CPU 达到 50%。接下来我对 20 个并发用户执行负载测试,响应时间达到 6 秒,CPU 70% 从而超过了 SLA。

应用程序服务器配置为 4 核 7 GB RAM。

根据数据,这是否表明 Web 应用程序一次只能支持 10 个用户?是否有任何公式或程序可以建议应用程序可以支持的最大用户数。

TIA

4

1 回答 1

0

“并发用户”不是一个有意义的衡量标准,除非您还对“思考时间”和其他一些东西进行建模。

想想人们在 Kindle 上看书的例子。普通读者每 60 秒翻一页,向中央服务器发送一点 ping。如果系统每秒可以支持 10,000 次这些 ping,那是多少个“并发用户”?大约 10,000 * 60,或 600,000。现在想象一下人们阅读速度更快,每 30 秒翻页一次。同一个系统将只能支持一半的“并发用户”。现在想象一下像 Halo 这样的在线游戏。每个用户每秒将发出多个事务/请求。换句话说,用户行为很重要,你无法控制它。您只能对其进行建模。

因此,对于您的应用程序,您必须对请求之间的“思考时间”做出合理的猜测,并将其添加到您的基准测试中。只有这样,您才能开始进行合理的模拟。其他需要考虑的事情是会话时间、可变性、一天中的时间等。

“成熟优化手册”的第 4 章讨论了很多这样的问题:http ://carlos.bueno.org/optimization/mature-optimization.pdf

于 2015-05-26T18:14:02.393 回答