先看
(资料图)
【Jmeter】基础介绍-详细
【Jmeter】Request1输出作为Request2输入-后置处理器
继续聊提出的第二个问题,即
2.需要按比例分配API请求并发,以模拟真实的API压力场景
做压测的时候,一般的需求都是多个API同时压,不然也看不出真正的tps是多少啊。
比如虽然接口a的需求并发不高,500个用户才请求一次,但是特别耗性能,导致其他接口tps下降严重,所以压测的时候可以将比例调的很小,但是不能忽略它,只测并发请求高的接口
说会主题,如何按比例分配压测并发量呢?使用Jmeter可以有两种实现方式
先说第一种,通过线程组的方式控制:
线程组1配置:
线程组2配置:
区别就是线程数不一样,当然用循环次数也可以控制,区别可以看【Jmeter】基础介绍-详细。
Request请求:
结果:
这里哪个请求在前完全随机,两个线程中互不干扰。
这种方式的好处就是完全并行,互不干扰,缺点就是基本没有使用场景,一般情况下,API都是有权限认证接口的,后面的接口需要依赖前面接口的输出(实现方式可以看【Jmeter】Request1输出作为Request2输入-后置处理器),这种完全隔离的方式显然无法满足需求,或者你需要自己写代码提前获取登录信息,不使用压测过程中登录返回的认证信息。
我们继续介绍第二种方式,其实就是按【Jmeter】Request1输出作为Request2输入-后置处理器中创建的线程组一样,只使用一个线程组,然后通过循环控制器来控制某个Api所占比例:
新建循环控制器:
调整参数达到按比例分配Api压力的目的:
执行效果:
如上图所示,执行了一个Request1和两个Request2,而且是按顺序执行的,即这种方式可以满足【Jmeter】Request1输出作为Request2输入-后置处理器需求的同时使用。不过有两点需要注意:
以上两个问题,在我的测试场景中1没有影响,即用户1、2、3、4、5那个来请求Api对压测来说是不关心的,性能完全一样。这里的登录只是为了压测登录接口,同时生成一个token给下面的接口使用。问题2影响比较大,可以通过【Jmeter】基础介绍-详细中提到的Ramp-up时间参数来控制,首先按比例配置好循环控制器后,将线程数和循环次数配置为1,Ramp-up配置为0,即立刻启动,然后使用压测机跑一下用于估算一次压测流程的时间。得到这个时间后,就是我们在实际压测中需要填写到Ramp-up中的参数,比如一次完整的压测流程需要2s,我现在需要压测执行1000个线程,循环100次,即一共10w次请求,将Ramp-up时间设置为2s,即1000个线程将在2s内逐步启动,达到所有线程的启动时间覆盖第一个线程一次循环的整个时间段,来达到真实模拟多种请求并发执行的过程,解决以上提到的第二个问题。
关键词:
当前快看:【Jmeter】按比例分配Api压测
2023-04-25上海首次提出将社区打造成中医药服务主阵地,实现八个“全覆盖”
2023-04-25通讯!试驾26.28万比亚迪海豹,5.9秒破百,纯电续航700km
2023-04-25支持公积金支付新房首付款 今日热讯
2023-04-25读书月|大兴区天宫院街道的朋友邀您与书同行
2023-04-25于右任《标准草书草圣千文》,高清字帖。
2023-04-254月24日基金净值:鹏华前海万科REITS最新净值101.332,跌0.19%
2023-04-25环球快看点丨司寇是什么官_关于司寇是什么官的介绍
2023-04-25宣花袍易爆点图片_宣花袍|世界快资讯
2023-04-25焦点快看:五六折
2023-04-25当前快看:【Jmeter】按比例分配Api压测
2023-04-25上海首次提出将社区打造成中医药服务主阵地,实现八个“全覆盖”
2023-04-25通讯!试驾26.28万比亚迪海豹,5.9秒破百,纯电续航700km
2023-04-25支持公积金支付新房首付款 今日热讯
2023-04-25读书月|大兴区天宫院街道的朋友邀您与书同行
2023-04-25于右任《标准草书草圣千文》,高清字帖。
2023-04-254月24日基金净值:鹏华前海万科REITS最新净值101.332,跌0.19%
2023-04-25环球快看点丨司寇是什么官_关于司寇是什么官的介绍
2023-04-25宣花袍易爆点图片_宣花袍|世界快资讯
2023-04-25焦点快看:五六折
2023-04-25Copyright 2015-2022 每日超市网版权所有 备案号:浙ICP备2022016517号-15 联系邮箱:5 146 761 13 @qq.com