首页 > 解决方案 > 在 Jmeter 中如何找到 1k/2k 并发用户的响应时间,以及 1k 和 2k 用户的 Ram-Up 时间

问题描述

我有一个要求,比如 API 应该能够在 5 秒内处理 5k 并发用户。我如何在 jmeter 中测试这个场景。对于 1k 并发用户,应该在 Jmeter 中设置 RampUp 时间。

标签: performancejmeter

解决方案


5 秒 5000 很容易达到:

  1. 使用普通线程组

    在此处输入图像描述

  2. 使用并发线程组

    在此处输入图像描述

关于加速,我只能给你:

  • 来自JMeter 文档的引用:

    加速期告诉 JMeter 需要多长时间才能“加速”到选择的全部线程数。如果使用 10 个线程,并且加速周期为 100 秒,那么 JMeter 将需要 100 秒才能让所有 10 个线程启动并运行。每个线程将在前一个线程开始后 10 (100/10) 秒后开始。如果有 30 个线程和 120 秒的加速周期,那么每个连续的线程将延迟 4 秒。

    加速需要足够长以避免在测试开始时工作负载过大,并且足够短以使最后一个线程在第一个线程完成之前开始运行(除非有人希望发生这种情况)。

    从 Ramp-up = 线程数开始,并根据需要向上或向下调整。

  • 以及一条关于总体提升的建议:如果您正在进行某种形式的压力测试,最好逐渐增加负载,这样您就可以将增加的负载与吞吐量和响应时间相关联,因为运行 5000 个线程 5 秒只会为您提供有关此工作负载响应时间的基本信息,当性能开始下降时,您将无法判断应用程序每秒可以支持的最大用户/请求数是多少,等等所以你可以考虑这样的负载模式:

    在此处输入图像描述

    并查看Response Times Over Time图表,了解并发用户数与应用程序响应时间之间的关系


推荐阅读