Jmeter 1 线程组和多个 HttpRequest
Posted
技术标签:
【中文标题】Jmeter 1 线程组和多个 HttpRequest【英文标题】:Jmeter 1 Thread Group and Multiple HttpRequest 【发布时间】:2019-09-21 17:07:26 【问题描述】:我有以下 Jmeter 配置
1 线程组,线程数为 1,在我定义的这 4 个 HttpRequest 下。循环计数为forever
。
我的问题是我的请求将如何被触发?由于我在我们的线程组中定义了1 as number of threads
,它会顺序触发上述4个请求还是并行触发?
如果我在我们的线程组中定义了2 as number of threads
,那么请求将如何被触发呢?
为简单起见,假设加速时间为 0。
【问题讨论】:
据我所知,线程数为 1,调用将是连续的,如果线程 t 为 4,它们将是并行的 【参考方案1】:在同一个线程中,除非你使用Parallel Controller
,否则请求是按顺序执行的
如果你有多个线程,它会根据ramp up period执行线程,如果设置为零,所有线程将同时启动,注意理论上它们可以顺序执行请求,但大多是零星的。
您可以使用Synchronizing Timer控制线程
SyncTimer 的目的是阻塞线程,直到 X 个线程被阻塞,然后它们都被立即释放
【讨论】:
当您说they can execute requests sequentially, but mostly sporadically
时,您的意思是 - 并行但不同时?我无法理解sporadically
@BreakingBenjamin 操作系统决定何时在线程之间切换,线程可以完成其操作然后切换到其他线程
我的循环计数器是无限的。因此,假设一个线程组中的所有 2 个线程同时启动(加速时间 0),那么它们会触发请求 - parallel
或 sequentially
或 sequentially but not in order
?
@BreakingBenjamin 线程将并行运行,您会看到请求的顺序是零星的
你能看看这个***.com/questions/58066367/…。这是上面的延续。【参考方案2】:
每个线程都将完整地执行测试计划,并且完全独立于其他测试线程。多个线程用于模拟与服务器应用程序的并发连接。
更多详情请参考
https://jmeter.apache.org/usermanual/test_plan.html
【讨论】:
以上是关于Jmeter 1 线程组和多个 HttpRequest的主要内容,如果未能解决你的问题,请参考以下文章