【性能测试】JMeter:集合点,同步定时器的应用实例!

news2024/12/26 21:57:16

一、集合点的定义

在性能测试过程中,为了真实模拟多个用户同时进行操作以度量服务器的处理能力,可以考虑同步虚拟用户以便恰好在同一时刻执行操作或发送请求。

通过插入集合点可以较真实模拟多个用户并发操作。

(注意:虽然通过加入集合点可以约束请求同时发送,但不能确保请求同时到达服务器,所以只能说是较真实模拟并发)

在JMeter中可以通过同步定时器来设置集合点。

二、同步定时器

Synchronizing Timer的目的是阻塞线程,直到X个线程被阻塞,然后它们全部被释放。因此,Synchronizing Timer可以在测试计划的各个点创建大的即时负载。

▲ 配置项

Number of Simultaneous Users to Group by:

设置一次性释放的线程数(默认为0)。通俗的理解就是并发用户数。

若设置为0,表示一次性释放的线程组下所有的线程。也就是并发用户数等于线程组下设置的线程数。

Timeout in milliseconds:

设置超时时间(单位毫秒ms,默认为0)。

若设置为0,定时器需要无条件等待设置线程数个数的线程全部到达才释放。比如设置线程数为100,则定时器无条件等待直到有100个线程达到才释放。

若设置的值大于0,则定时器以设置的超时时间作为等待释放的条件。

若相邻两个线程到达同步定时器的时间间隔大于超时时间,即使设置的线程数的线程未全部到达,定时器也会停止等待而释放到达的线程。

比如设置线程数为100,超时时间为2000ms,

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

工作原理为:从定时器工作开始计时,时间从0开始,在超时时间内第1个线程达到,则计时器重置为0;等待第2个线程,在超时时间内第2个线程到达,计时器重置为0;等待第3个线程...

只要相邻两个线程组之间的等待时间间隔没有超过2000ms的超时时间,则会等待全部100个线程达到才释放。

否则会停止等待立即释放,比如,在等待第24个线程到达定时器时,计时器时间超过2000ms了,则定时器停止等待,立即释放到达的23个线程。

▲ 注意事项

在使用同步定时器时,请注意如下事项:

  • 1.超时时间设置合理性
Timeout > 1000*(Number of Simulated Users to Group by)*(Ramp-Up Period)/(Number of Threads)
其中,Timeout为超时时间(单位ms),
Number of Simulated Users to Group by为一次性释放线程数(并发数)
Ramp-Up Period为线程组下所有线程的加载时间
Number of Threads为线程组下所有线程数
比如在线程组中设置10秒内要加载完200个线程,并在同步定时器中设置并发数为100,则超时时间设置须满足如下条件:
Timeout > 1000*100*10/200 ms = 5000 ms
  • 2.同步定时器仅对同一JVM中的线程有效,因此在分布式测试中不要使用,因为当JMeter分布式部署执行性能测试时,测试计划分发到不同的Slave上执行,为了确定是否满足线程释放条件,各台Slave上的JVM需要相互通信才能确定,实现困难且即使实现了也难免存在延时,这样就不能保证真实的并发。所以目前JMeter的做法是仅支持单个JVM。

三、应用案例

这里以ECshop前台系统登录并发为例。

假设默认50个用户并发登录。

添加同步定时器,将释放线程数设置为50,超时时间设置为1000ms。

如下图所示:

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1021916.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pdf在线加密怎么做?几个好用的方法分享

PDF在线加密怎么做?在进行PDF在线加密时,您可以使用以下几种方法来确保文档的安全性,并注意以下一些加密的注意事项。 方法一:使用PDF转换加密工具 首先我们可以在电脑上打开迅捷PDF转换器工具,进入该转换工具后先在顶…

Vue系列(二)之 基础语法【上篇】

目录 一. 插值 1.1 文本 1.2 原始HTML 1.3 属性 1.4 表达式 二. 指令 2.1 v-if/v-else-if/v-else指令 2.2 v-show指令 2.3 v-for指令 2.4 下拉框/复选框 2.5 动态参数 三. 过滤器 3.1 局部过滤器基本应用 3.2 局部过滤器串行使用 3.3 局部过滤器传参 3.4 全局过…

无涯教程-JavaScript - LCM函数

描述 LCM函数返回整数的最小公倍数。最小公倍数是最小的正整数,它是所有整数参数number1,number2等的倍数。使用LCM添加具有不同分母的分数。 语法 LCM (number1, [number2] ...)争论 Argument描述Required/OptionalNumber1, number2... 您想要最小公倍数的1到255个值。 如…

【JDK 8-函数式编程】4.2 BiFunction

一、BiFunction 二、改造上节课&#xff1a;四则运算 一、BiFunction Function 只能接收一个参数&#xff0c;要传递两个参数,则用 BiFunction 两个参数&#xff1a;可以是两种不同数据类型 调用方法: R apply(T t, U u); import java.util.Objects;/*** param <T>…

无涯教程-JavaScript - GCD函数

描述 GCD函数返回两个或多个整数的最大公约数。最大公约数是将number1和number2均除而无余数的最大整数。 语法 GCD (number1, [number2] ...)争论 Argument描述Required/OptionalNumber11 to 255 values. If any value is not an integer, it is truncated.Requirednumber…

颠覆传统!老子云支持70+三维格式转换,在线即可一键处理!

老子云自研AMRT展示框架及三维格式具有广泛兼容性&#xff0c;同时还会用户提供了3D格式在线转换工具&#xff0c;支持实现70三维格式模型的快速处理和转换。 你是不是也遇到过这种情况&#xff1a;做了半天的3D模型图&#xff0c;好不容易弄好了&#xff0c;到最后插入的时候居…

win11 腾讯会议提示未检测到可用麦克风

平时都用的耳机&#xff0c;今天直接用笔记本的音频进行会议&#xff0c;发现提示&#xff1a;显示未检测到可用麦克风&#xff0c;请插入设备重试&#xff1b;很奇怪的设置了腾讯会议的音频和电脑的&#xff0c;发现电脑的显示无可用的音频输入设备&#xff0c;折腾一番&#…

PYTHON第一次

1. 输入三个整数&#xff0c;按降序输出 a int(input("请输入第一个整数&#xff1a;")) b int(input("请输入第二个整数&#xff1a;")) c int(input("请输入第三个整数&#xff1a;"))nums [a, b, c] nums.sort(reverseTrue)print("…

mysql某批量更新导致死锁

#查询当前数据库全部线程show full processlist #查询当前运行的全部事务select * from information_schema.innodb_trx#查询锁情况select * from information_schema.innodb_locks#查询锁等待情况select * from information_schema.innodb_lock_waits #查看mysql设置等待锁时长…

《golang设计模式》第二部分·结构型模式-06-享元模式(Flyweight)

文章目录 1. 概述1.1角色1.2 类图 2. 代码示例2.1 设计2.2 代码2.3 类图示例 1. 概述 享元&#xff08;Flyweight&#xff09;模式采用共享方式向客户端提供数量庞大的细粒度对象。 所谓细粒度对象&#xff0c;是指实现了业务细节并相互独立的对象。细粒度对象是一种相对概念&…

2023年中秋·国庆节放假通知

放假期间如有业务、技术及其他相关需求&#xff0c;欢迎新老客户前来咨询&#xff01;放假期间如给您带来不便敬请谅解! 注意事项 1、放假离开公司前须全面清扫所属办公区域的卫生&#xff0c;收拾好桌面、保管好个人办公物品&#xff1b; 2、关闭个人电脑等办公设备的电源&a…

MySQL DDL操作触发Metadata Lock等待,怎么办?5个高效应对策略解析!

大家好&#xff0c;我是小米&#xff0c;一个热衷于技术分享的程序员。上周三&#xff0c;有一位童鞋在 QQ 群里向我请教了一个关于“alter table 触发metadata lock一直等待”的问题&#xff0c;在今天的文章中&#xff0c;我将与大家分享一些关于MySQL数据库DDL操作中触发Met…

再获认可丨聚焦云计算标准和应用大会,畅谈边缘AI的探索实践

2023年9月13日&#xff0c;中国电子技术标准化研究院主办的第十二届云计算标准和应用大会在北京成功召开。本次大会以“标准筑基 数智创新 云端赋能 合作共赢”为主题&#xff0c;汇聚政产学研用各方专家学者&#xff0c;共享和探讨云计算标准化工作的重要进展以及云计算产业发…

实现可观测性平台的技术要点是什么?

文章目录 实现可观测性平台的技术要点是什么?兼容全域信号量所谓全域信号量有哪些&#xff1f;统一采集和上传工具统一的存储后台自由探索和综合使用数据总结 实现可观测性平台的技术要点是什么? 随着可观测性理念的深入人心&#xff0c;可观测性平台已经开始进入了落地阶段…

RecyclerView滑动时添加缩放效果

最近看到一个动画效果&#xff0c;感觉不错&#xff0c;所以动手试一试 我实现的效果 基本上是已经实现了头像无限滚动中itemview也伴随缩放效果 初步实现基本思路&#xff1a; 1、没选择用ViewPager&#xff0c;考虑到特定几张图片的循环显示和扩展我使用recyclerview 2、头…

lv5 嵌入式开发-2 exec函数族

目录 1 进程 – exec函数族 1.1 exec函数族特点 1.2 进程 – execl / execlp使用方法 1.3 进程 – execv / execvp 2 进程 – system 3 exec族要点演示 掌握&#xff1a;exec函数族、system 1 进程 – exec函数族 执行程序&#xff0c;通孔ps -elf发现&#xff0c;父进…

springcloud3 分布式事务-产生原因的模拟1

一 分布式事务 1.1 分布式事务产生条件 分布式事务&#xff0c;就是指不是在单个服务或单个数据库架构下&#xff0c;产生的事务&#xff0c;例如&#xff1a; 1.跨数据源的分布式事务 2.跨服务的分布式事务 3.综合情况 二 案例操作 2.1 原理架构 订单的创建、库存的扣…

1万多关数独逻辑游戏ACCESS\EXCEL数据库

数独盘面是个九宫&#xff0c;每一宫又分为九个小格。在这八十一格中给出一定的已知数字和解题条件&#xff0c;利用逻辑和推理&#xff0c;在其他的空格上填入1-9的数字。使1-9每个数字在每一行、每一列和每一宫中都只出现一次&#xff0c;所以又称“九宫格”。 每一关存储了8…

【树】B树与B+树

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

计算机视觉与深度学习-经典网络解析-VGG-[北邮鲁鹏]

目录标题 VGG参考VGG网络贡献使用尺寸更小的$3 \times 3$卷积串联来获得更大的感受野放弃使用$11 \times 11$和$5 \times 5$这样的大尺寸卷积核深度更深、非线性更强&#xff0c;网络的参数也更少&#xff1b;去掉了AlexNet中的局部响应归一化层(LRN)层。 网络结构主要改进输入…