JMeter:虽然用户负载增加了,但吞吐量相同的可能原因是什么



虽然负载比以前的测试增加了很多,但吞吐量保持不变的可能原因是什么?注意:在运行性能测试时,我甚至收到了错误"Internal Server Error"。

这意味着您已达到饱和点-性能最高点!

与最大CPU利用率和峰值吞吐量相邻的一定数量的并发用户。添加更多并发用户将导致响应时间和吞吐量下降,并导致CPU利用率达到峰值。此外,它可能会抛出一些错误!

之后,如果你继续增加虚拟用户的数量,你可能会看到这些:

  • 响应时间在增加
  • 你的一些请求失败了
  • 吞吐量要么保持不变,要么降低——这表明性能瓶颈

理想世界中的理想负载测试看起来像:

  • 响应时间保持不变,无论有多少虚拟用户访问服务器
  • 吞吐量的增加与负载的增加相同,即:

    • 100个虚拟用户-每秒500个请求
    • 200个虚拟用户-每秒1000个请求
    • 等等

实际上,测试中的应用程序可能会在一定程度上扩展,但最终您将达到增加负载的程度,但响应时间将增加,吞吐量将保持不变(或下降(

查看HTTP状态代码500

超文本传输协议(HTTP(500内部服务器错误服务器错误响应代码表示服务器遇到了阻止其完成请求的意外情况。

这很可能表明测试中的应用程序过载,下一步是找出原因,原因可能在:

  1. 应用程序未针对高负载(包括所有中间件:应用程序服务器、数据库、负载均衡器等(进行正确配置
  2. 应用程序缺少资源(CPU、RAM等(,可以使用例如JMeter-PerfMon插件进行检查
  3. 应用程序使用低效的函数/算法,可以使用分析工具进行检查

最新更新