首页 > 其他分享 >jmeter 集合点

jmeter 集合点

时间:2023-12-24 21:23:33浏览次数:31  
标签:定时器 接口 并发 线程 集合点 100 jmeter

一线程组有接口A、接口B、接口C,

设置线程数:100, 循环:1000次, 
接口A 开始 进行100线程的请求,但是 接口B 请求的时候,可以保证还是 100次 请求同时进行吗? 可以保证服务器 同时处理了接口的100次请求吗? 
就像现实生活中的接力赛比赛,第一棒出发的时候是10个人同时出发,到第一棒结尾的时候,还能保证10个人同时到达吗? 到最后一棒的时候,能有两个人同时到达就不错了。
所以每一个接口面临的并发,就会比100 要小,就会变的比较分散一些;
如果说:业务可能对瞬间并发要求比较高,比如要求 某个接口  100并发跑,-怎么保证呢? 
集合点。

  • 集合点:是为了增加瞬间并发压力的一种机制,在脚本中增加一个标记,所有虚拟用户执行到标记处会进行等待,等所有用户都到达后,再同时继续执行下一步操作;

优点: 对服务器来说,会产生一种瞬间高并发
缺点:对服务器来说,平均压力会降低;
业务场景:抢购、秒杀 这类的,需要加集合点;一般抢购,是以秒为单位的,抢华为手机,5秒就足够了。
其他场景都不需要加,一般加了集合点后,就不使用tps来衡量系统性能(持续时间太短了)一般关注的就是有多少并发、并且服务器没报错、 并且全部成功了---没超卖,这就说明是ok的
集合点功能要慎重使用,因为加了集合点,系统的平均压力会降低;

比如在接口C,前加一集合点,即所有用户跑到接口C 请求之前,都要进行等待,等待其他用户到位; 那等待的过程中,服务器就很空闲;
所以,抢购这种,看重的是 并发,以及数据的准确性。kk

同步定时器 synchronizing timer:  集合点
模拟用户组的数量:100   (一般跟线程组 的线程 数是保持一致的,希望某接口的瞬间并发更高一些)
超时:在等100人的时候,最多等:多长时间; 比如:5秒,如果等了5秒--5000毫秒,还没等到100人,那就不等了,来了多少都走;
  如果不设置超时时间,默认超时时间是0,意思就是永远等待,只要不够100人,就不发车;
等待时间: 一般来说5秒,比较长了。

 

  • jmeter 中多个线程组的关系

jmeter 中一个线程组 内的多个接口,是按照顺序来跑的;
那一个jmeter 有多个线程组呢,多个线程组之间是完全没关系的。
线程组:一群人,代表一个用户群体,比如开发部、测试部; 大家是相互独立的,谁也不影响谁!

  • 固定定时器:设置一个固定的延迟时间--即固定的等待多长时间再去执行场景:想要定时去执行某个接口的时候,就可以用上;

接口-右击-添加-定时器--固定定时器, 只一个选项:线程延迟--多长时间;

定时器:放在接口下面,但是  是在接口之前执行的,虽然位置是在接口 之下;
定时器作用域:放在接口下面,仅作用于 某个接口; 放在线程组下面,对线程组内的所有接口 都起作用;
如果希望定时器仅应用于其中一个请求,就把定时器作为子节点加入;    ---一般这种情况会多一些;
同一接口下放两个固定定时器,都是2秒,相当于 一个固定定时器:4秒;
做性能的话,一般不用固定定时器; 因为肯定不希望它等待。 做自动化的话,可能用的更多一些;
性能的话,同步定时器用的更多一些;

 

标签:定时器,接口,并发,线程,集合点,100,jmeter
From: https://www.cnblogs.com/MTXue/p/17924873.html

相关文章

  • 软件测试/测试开发|Docker+Jmeter+InfluxDB+Grafana 搭建性能监控平台
    为什么要搭建性能监控平台?1.1需求背景在用Jmeter获取性能测试结果的时候,Jmeter本身带有聚合报告如下图所示:这个报告有几个很明显的缺点:只能自己看,无法实时共享;报告信息的展示比较简陋单一,不直观;1.2需求方案为了解决上述问题,必须要请出了InfluxDB+Grafana:InfluxDB:持续型......
  • Jmeter:http请求及json断言
    一前言环境:window10jmeter5.3对jmeter的http请求和json断言这2个组件中的一些字段进行简单说明二http请求如上,可以选择切换语言,有时切换成中文或者英文,这样需要填写字段的意思更加一目了然三json断言断言请求返回的json数据数时,jmeter中默认有2种方式可选,如下这里......
  • Jmeter:定义公共变量
    一前言环境:window10Jmeter5.3在jmeter中诸如一些协议名称、域名或其它会多次重复输入的值,我们可以定义一些变量来关联这些值,在需要输入的地方输入变量名称jmeter就会识别出变量所指代的具体值二例子在jmeter中定义公共变量常用的有2个地方,一个是testplan,一个是userdefi......
  • Jmeter:一个简单的http请求
    一前言环境:window10Jmeter5.3Jmeter是以协议为基础(如http协议ftp协议),通过接口的方式向服务端发送数据和接收数据,所以在使用Jmeter时,最好有一些对应的协议基础知识二一些简单的http请求步骤:在testplan新建threadgroup在threadgroup中新建http请求在threadgroup中......
  • jmeter-聚合报告
    查看结果树:可以帮我们展示出来每一个接口的请求数据,响应数据,但是没有办法帮我们做数据的汇总;如果要大批量的跑数据,查看结果树就没法用了,会卡死;会影响性能;真正做性能测试的时候,用:聚合报告聚合报告:测试计划-添加-监听器-聚合报告比如说:线程组中有一个接口,比如说用线程2个,循环10......
  • jmeter-后置处理器
    json提取器场景使用:多个接口,第二个接口的某个请求入参需要使用到第一个接口的响应数据中的某字段; 一般接口响应都是json数据,所以针对响应的json数据,提取其中的某字段,一般使用json提取器。比如:接口a搜索库存,获取库存;接口b去购买-最新的库存;    思路:就是将第......
  • jmeter +prometheus+grafana做性能测试监控
    1,环境搭建--->mac系统打开终端terminal,复制并粘贴以下命令:/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install.sh)然后按回车brew-version查看版本 2,安装prometheus方法一:brewinstallprometheus 安装完毕后,通过pwd查看......
  • jmeter CSV参数化文件设置
     遇到文件结束符是否再次循环:假如我把你文件中的数据用完了,还能从第一行再次读取数据吗;默认true,是允许的。 默认情况是:将文件中的数据读取完了,再去从头读取数据。遇到文件结束符停止线程:False, 文件从头读到尾,要停止线程不。遇到文件结束符再次循环:True遇到文件结束符停止......
  • Jmeter HTTPS接口测试证书导入过程图解
    python中没有swich..case,若要实现一样的功能,又不想用if..elif来实现,可以充分利用字典进行实现主要是想要通过不同的key调用不同的方法,在学习过程中,发现不管输入的key是什么,只要字典中存在输出内容,每次都会输出,这跟自己需要的功能有出入。通过调试后,发现问题主要出现在key值对应的va......
  • 使用阿里云性能测试工具 JMeter 场景压测 RocketMQ 最佳实践
    作者:森元需求背景新业务上线前,我们通常需要对系统的不同中间件进行压测,找到当前配置下中间件承受流量的上限,从而确定上游链路的限流规则,保护系统不因突发流量而崩溃。阿里云PTS的JMeter压测可以支持用户上传自定义的JMeter脚本,按照自定义的逻辑,借助PTS强大的分布式压测能力......