我正在分析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
"并发用户"不是一个有意义的测量,除非您还建模"思考时间"和其他几件事。
考虑人们在Kindle上阅读书籍的情况。普通的读者将每60秒转动页面,向中央服务器发送一些ping。如果系统可以支持每秒10,000个ping,那么有多少个"并发用户"?约10,000 * 60,或600,000。现在,想象人们阅读的速度更快,每30秒翻转一次。同一系统只能支持一半的"并发用户"。现在想象一个像Halo在线的游戏。每个用户每秒都会发出多个交易/请求。换句话说,用户行为非常重要,您无法控制它。您只能对其进行建模。
因此,对于您的应用程序,您必须在请求之间的"思考时间"中进行合理的猜测,并将其添加到您的基准中。只有这样,您才会开始进行合理的模拟。其他要考虑的事情是会话时间,可变性,一天中的时间等。
"成熟优化手册"的第4章讨论了很多此类问题:http://carlos.bueno.org/optimization/mature-optimization.pdf