Jmeter系列-并发线程Concurrency Thread Group的介绍(7)

这篇具有很好参考价值的文章主要介绍了Jmeter系列-并发线程Concurrency Thread Group的介绍(7)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简介

  • Concurrency Thread Group提供了用于配置多个线程计划的简化方法,该线程组目的是为了保持并发水平,意味着如果并发线程不够,则在运行线程中启动额外的线程
  • Concurrency Thread Group提供了更好的用户行为模拟,因为它使您可以更轻松地控制测试的时间,并创建替换线程以防线程在过程中完成

现在安装插件

插件包管理工具的下载和安装见文章
进入到选项-plugins manager,选择插件Custom Thread Groups,并下载应用
Jmeter系列-并发线程Concurrency Thread Group的介绍(7),Jmeter,jmeter

创建并发线程

测试加护右键-添加-线程(用户)选择即可
Jmeter系列-并发线程Concurrency Thread Group的介绍(7),Jmeter,jmeter

使用介绍

Jmeter系列-并发线程Concurrency Thread Group的介绍(7),Jmeter,jmeter

  • Target Concurrency:目标并发(线程数)
  • Ramp Up Time:启动时间;若设置 1 min,则目标线程在1 imn内全部启动
  • Ramp-Up Steps Count:阶梯次数;若设置 6 ,则目标线程在 1min 内分六次阶梯加压(启动线程);每次启动的线程数 =目标线程数 / 阶梯次数 = 60 / 6 = 10
  • Hold Target Rate Time:持续负载运行时间;若设置 2 ,则启动完所有线程后,持续负载运行 2 min,然后再结束
  • Time Unit:时间单位(分钟或者秒)
  • Thread Iterations Limit:线程迭代次数限制(循环次数);默认为空,表示一直迭代,如果运行时间到达Ramp Up Time + Hold Target Rate Time,则停止运行线程【不建议设置该值】
  • Log Threads Status into File:将线程状态记录到文件中(将线程启动和线程停止事件保存为日志文件);

注意点

  • Target Concurrency只是个期望值,实际不一定可以达到这个并发数,得看上面的配置【电脑性能、网络、内存、CPU等因素都会影响最终并发线程数
  • Jmeter会根据Target Concurrency的值和当前处于活动状态的线程数来判断当前并发线程数是否达到了Target Concurrency;若没有,则会不断启动线程,尽力让并发线程数达到Target Concurrency的值

Concurrency Thread Group与Standard Thread Group的区别

和Standard Thread Group不同,它不会预先创建所有线程,因此不会使用额外的内存

  • Stepping Thread Group不提供设置启动延迟时间,阶梯增压过渡时间,阶梯释放过渡时间,但Concurrency Thread Group提供
  • Stepping Thread Group可以阶梯释放线程,而Concurrency Thread Group是瞬时释放
  • Stepping Thread Group设置了需要启动多少个线程就会严格执行,Concurrency Thread Group会尽力启动线程达到Target Concurrency值
Stepping Thread Group 是手动场景:测试过程,按照设定好的步骤执行
Concurrency Thread Group 是目标场景:达到某个目标运行场景,测试过程不可控,动态变化
和Loadrunner相比:
Stepping Thread Group :设置并发用户数,持续时间等,每隔多少时间自动增加多少个用户
Concurrency Thread Group:预设一个目标并发数,每隔一段时间增加一部分并发数,直到 TPS 达到目标并发数,然后持续运行一段时间

Concurrency Thread Group 和 Active Threads Over Time

Jmeter系列-并发线程Concurrency Thread Group的介绍(7),Jmeter,jmeter

第一个关注点:阶梯增压过程

  • 看Concurrency Thread Group负载预览图每次阶梯增压都是瞬时增压的,但是实际测试结果可以看到它也是有一个过渡期,并不是瞬时增压

第二个关注点:持续负载运行结束后,所有线程瞬时释放

  • 从图最后可以看到,所有线程都是瞬时释放的
  • 普通的线程组有三种状态:启动、运行、释放;而Concurrency Thread Group的线程可以理解成只有两种状态:启动、运行;因为线程都在极短的时间内就结束了

Concurrency Thread Group特殊情况

如:活跃状态的线程上下波动的很厉害
大致原因
受环境稳定性影响,如电脑网络、内存、CPU;活跃线程数会有波动

如何解决
遇到这种情况可以多调试几次,看看情况如何

结论

  • 其实有波动是正常的,我们没必要纠结
  • 我们要重点注意的是TPS
  • 线程组的负载只是压力值,我们要测的是服务端的性能,需要关注的是服务端的TPS

参考文章文章来源地址https://www.toymoban.com/news/detail-732170.html

到了这里,关于Jmeter系列-并发线程Concurrency Thread Group的介绍(7)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jmeter组件-线程组(Thread Group)

    Jmeter运行在JVM虚拟机上,进程的开销比较大,如果使用进程方式发起负载,随着并发量增加也需要不断增加负载机. Jmeter选择使用线程来运行, Jmeter通过 线程组 驱动多个线程运行测试脚本对被测服务器发起负载, 1个负载机可以运行多个线程组 选中测试计划- 添加- 线程- 线程组

    2024年02月14日
    浏览(33)
  • (七)【Jmeter】线程(Threads(Users))之bzm-Arrivals Thread Group

    简述 操作路径如下: 作用:通过自动调整并发用户数来实现具体需要达到每秒处理多少个请求的需求。 配置:设置到达率、持续时间等参数。 使用场景:模拟实际用户按照特定 到达率 进行并发访问。 优点:支持模拟突发流量,更贴近实际用户行为。 缺点:配置较为复杂

    2024年02月19日
    浏览(31)
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)

    简述 操作路径如下: 作用:通过逐步增加线程数来模拟用户并发访问。 配置:设置 This group will start 、 First,wait for 、 Then start 、 Next , add 等参数。 使用场景:模拟逐步增长的并发访问,观察应用程序的性能变化。 优点:适用于测试应用程序在逐步增加负载下的性能表现。

    2024年02月20日
    浏览(30)
  • jmeter 线程组 Open Model Thread Group & 阶梯式压测、高峰流量压测

    简介     Open Model Thread Group 是5.4.1 版本中引入的一个实验性线程组,可以弹性模拟负载测试。例如设置多个线程模式,再根据这些线程模式调整不同的并发数、暂停时间。由于Open Model Thread Group 是一个实验性线程组,可能会存在一些限制和不确定性。            目录 1. 基

    2024年02月09日
    浏览(27)
  • (十一)【Jmeter】线程(Threads(Users))之jp@gc-Ultimate Thread Group

    简述 操作路径如下: 作用:提供了高级的线程组控制选项,支持更复杂的场景模拟。 配置:设置多种线程控制参数,如启动延迟、启动线程数、并发压测持续时间、关闭线程时间等。 使用场景:针对特定需求进行高级的并发访问模拟,如流量控制、延迟启动等。 优点:提

    2024年02月21日
    浏览(32)
  • (九)【Jmeter】线程(Threads(Users))之bzm-Free-Form Arrivals Thread Group

    简述 操作路径如下: 作用:支持自由形式的用户到达模式,具有更高的灵活性,与Arrivals Thread Group类似,不过是通过设置起始值、终止值和持续时间来达到压测目的。 配置:通过图形界面或脚本定义用户到达曲线。 使用场景:模拟复杂的用户到达模式,满足特定业务需求。

    2024年02月22日
    浏览(31)
  • Jmeter多线程并发和压测结果分析

    一、多线程并发 1. 线程组简介: (1). 线程数: 配置虚拟用户数量 (2). Ramp-Up时间:设置的虚拟用户数需要多长时间全部启动,如果线程数为10,准备时长为2,那么需要2秒钟启动10个线程,也就是每秒钟启动5个线程。 (3). 循环次数 (4). 调度器-持续时间(秒),压测多长时间。测试

    2024年02月05日
    浏览(26)
  • 多线程系列(二) -Thread类使用详解

    在之前的文章中,我们简单的介绍了线程诞生的意义和基本概念,采用多线程的编程方式,能充分利用 CPU 资源,显著的提升程序的执行效率。 其中 java.lang.Thread 是 Java 实现多线程编程最核心的类,学习 Thread 类中的方法,是学习多线程的第一步。 下面我们就一起来看看,创

    2024年02月19日
    浏览(37)
  • 深入探索MySQL的innodb_thread_concurrency配置

    含义和作用 innodb_thread_concurrency 参数限定了InnoDB存储引擎可以同时执行的线程数目。这个设置有助于控制并发操作,从而影响数据库处理事务的效率。通过限制活跃线程数量,可减少上下文切换的开销,避免过多的并发线程竞争资源导致性能降低。 查询和配置方式 查询当前

    2024年01月25日
    浏览(41)
  • 【Java系列】详解多线程(二)——Thread类及常见方法(上篇)

    个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习Java的一点学习心得,欢迎大家在评论区交流讨论💌 我们先来回顾一下线程与进程之间的联系。 我们知道多进程

    2024年02月04日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包