如何控制混合场景的占比

简介: 实际案例

引言:

综合场景执行的最终比例决定着性能测试结果的有效性。


Throughput Contoller,直译是吞吐量控制器,它是用来控制该控制器下面元件的执行次数,与控制吞吐量的功能无关。(注:用Constant Throughput Timer可以控制吞吐量,不建议使用此插件去控制综合场景比例)

Throughput Contoller有两种模式:Total ExecutionsPercent Executions。


参数说明如下:

  • Total Executions:按吞吐量值来指定执行次数。选择此模式,吞吐量值的单位为“次”。
  • Percent Executions:按百分比来指定执行次数。选择此模式,吞吐量值的单位为“%”。

上面说的两个指标从字面上很好理解,那勾选的per user是啥意思呢,我们可以做一些实验研究下:

首先使用percent模式进行实验:

场景设计如下,所有模式都设置20线程,迭代100次,throughput设置分为A(10%),B(90%)两个大模块,其中A下的两个接口A1(10%),A2(90%),B下的两个接口B1(10%),B2(90%),不勾选per user,结果如下:


label

samples

throughput

A1

20

14.6

A2

180

109

B1

179

107.7

B2

1620

940.8

再看勾选的结果:


label

samples

throughput

A1

20

19.7

A2

180

109.6

B1

180

109.7

B2

1620

937.5

可以说各项指标非常接近,我认为在percent模式下,vuser是否对结果无影响!

再看excutions模式,勾选per user:


label

samples

throughput

A1

200

137.1

A2

200

137.9

B1

200

138.2

B2

1800

865.4

不勾选per user:


label

samples

throughput

A1

10

55.6

A2

10

56.8

B1

59

70

B2

90

107.9

这么来看,差异就非常明显了

分析数据,得出结论:

  • 当勾选Per User时:
  1. 线程数*循环次数>=线程数*吞吐量时,Total Executions模式的执行次数=线程数*吞吐量。
  2. 当线程数*循环次数<线程数*吞吐量时,Total Executions模式的执行次数=当线程数*循环次数。
  • 当不勾选Per User时:
  1. 线程数*循环次数<=吞吐量时,Total Executions模式的执行次数=线程数*循环次数。
  2. 当线程数*循环次数>吞吐量时,Total Executions模式的执行次数=吞吐量。


第二种模式其实蛮绕的,我么绝大数情况下,第一种模式即可!

补充一点,jmeter的插件都是有性能损耗的,在我的试验下,该插件也存在10%左右的性能损耗,一些网上的帖子有通过随机算法控制区间来间接去控制综合场景的比例,虽然理论上没有问题,但大家也可自行去评估下性能损耗。

目录
相关文章
|
10天前
|
机器学习/深度学习 人工智能 编解码
CLEAR:新加坡国立大学推出线性注意力机制,使8K图像的生成速度提升6.3倍,显著减少了计算量和时间延迟
新加坡国立大学推出的CLEAR线性注意力机制,通过局部注意力窗口设计,显著提升了预训练扩散变换器生成高分辨率图像的效率,生成8K图像时提速6.3倍。
63 17
CLEAR:新加坡国立大学推出线性注意力机制,使8K图像的生成速度提升6.3倍,显著减少了计算量和时间延迟
|
8月前
LabVIEW连续采样与有限采样模式
LabVIEW连续采样与有限采样模式
283 0
|
运维
查看调整cpu频率及模式
查看调整cpu频率及模式
303 2
动态优化解决方案空间中的最小支持(Matlab代码实现)
动态优化解决方案空间中的最小支持(Matlab代码实现)
|
编解码 测试技术
AV1编码时间下降,接近使用水平
AV1最初发布时,编码速度缓慢,时间过长,严重影响编码器的可用性。随着不断的优化,其编码时间已经有很大改进,几乎可以使用。
1380 0
AV1编码时间下降,接近使用水平
|
机器学习/深度学习 存储 自然语言处理
NeurIPS 2022 | 词嵌入表示参数占比太大?MorphTE方法20倍压缩效果不减
NeurIPS 2022 | 词嵌入表示参数占比太大?MorphTE方法20倍压缩效果不减
|
存储 机器学习/深度学习 自然语言处理
【算法的特性,标准,时间维度空间维度计算方式】
【算法的特性,标准,时间维度空间维度计算方式】
301 0
【算法的特性,标准,时间维度空间维度计算方式】
Google Earth Engine——干旱指数(KBDI)是一个连续的参考量表,用于估计土壤和煤层的干燥程度。该指数在没有下雨的每一天都会增加(增加的数量取决于每日的最高温度)
Google Earth Engine——干旱指数(KBDI)是一个连续的参考量表,用于估计土壤和煤层的干燥程度。该指数在没有下雨的每一天都会增加(增加的数量取决于每日的最高温度)
360 0
Google Earth Engine——干旱指数(KBDI)是一个连续的参考量表,用于估计土壤和煤层的干燥程度。该指数在没有下雨的每一天都会增加(增加的数量取决于每日的最高温度)
|
编解码 区块链
Google Earth Engine——WWF河流流量累积数据集定义了排入每个单元的上游区域的数量(以单元数计)。排水方向层被用来定义哪些小区流入目标小区。累积单元的数量本质上是对上游集水区的测量。
Google Earth Engine——WWF河流流量累积数据集定义了排入每个单元的上游区域的数量(以单元数计)。排水方向层被用来定义哪些小区流入目标小区。累积单元的数量本质上是对上游集水区的测量。
136 0
Google Earth Engine——WWF河流流量累积数据集定义了排入每个单元的上游区域的数量(以单元数计)。排水方向层被用来定义哪些小区流入目标小区。累积单元的数量本质上是对上游集水区的测量。