【问题标题】:Jmeter : how to get large number of rps in jmeterJmeter:如何在 jmeter 中获取大量 rps
【发布时间】:2021-05-07 13:18:27
【问题描述】:

我正在使用 jmeter 测试一个 web 应用程序进行负载测试,我很难知道如何正确设置我将使用多少线程、加速和循环以获得大量 rps。无论如何,我想检查我的服务器是否可以保持 500rps。这里有没有人可以帮助我如何正确设置它。谢谢。

【问题讨论】:

标签: testing jmeter load-testing


【解决方案1】:

单位时间的请求数称为Throughput,主要取决于两个因素:

  1. 活动线程数
  2. 您的应用程序响应时间

第一个很明显 - 更多线程 -> 每秒更多请求。然而,JMeter 将在开始下一个请求之前等待前一个线程的响应,因此应用程序响应时间也很重要。

所以建议是:

  1. Thread Group 中的线程数设置为您系统的预期用户数。
  2. Set ramp-up period accordingly to the number of threads 因此负载会逐渐增加(和减少),这样您就可以将增加/减少的负载与不断变化的响应时间和吞吐量相关联
  3. 使用线程组的调度程序部分设置所需的测试持续时间可能是一个更好的主意,而不是循环。

  4. 运行测试并使用Server Hits Per Second 侦听器或HTML Reporting Dashboard每秒事务数图表观察实际吞吐量。如果它符合您的期望 - 您就完成了,如果没有 - 您将需要增加虚拟用户的数量。

【讨论】:

【解决方案2】:

可以使用ConcurrencyThreadGroup插件,具体看怎么Produce Desired RPS

线程池大小可以像RPS * <max response time> / 1000 一样计算。期望的速率越高,您需要的线程就越多。响应时间越长,您需要的线程就越多。

例如,如果您的服务响应时间可能是 2.5 秒并且目标 rps 是 1230,你必须有 1230 * 2500 / 1000 = 3075 个线程。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-25
    • 2019-11-01
    • 1970-01-01
    • 2021-09-08
    • 2021-10-04
    • 1970-01-01
    相关资源
    最近更新 更多