JMeter之Throughput Controller详解(实验)
Throughput Contoller,直译是吞吐量控制器,它是用来控制该控制器下面元件的执行次数,与控制吞吐量的功能无关。(注:用Constant Throughput Timer可以控制吞吐量。)
Throughput Contoller有两种模式:Total Executions 和Percent Executions。

参数说明如下:
- Total Executions:按吞吐量值来指定执行次数。选择此模式,吞吐量值的单位为“次”。
- Percent Executions:按百分比来指定执行次数。选择此模式,吞吐量值的单位为“%”。
- 吞吐量:该值可以是任意整数,如果小于等于0,则一次也不执行。
- Per User:如果勾选该项则按虚拟用户数(线程数)来计算执行次数,如果没有选中该项则按所有虚拟用户数来计算执行次数。
那么如何计算Throughput Controller其下的执行次数?
下面添加循环控制器,在Throughput Controller下添加Debug Sampler元件来做实验:
实验一:测试按Percent Executions模式执行次数
TestCase1:线程数3,线程循环次数2,循环控制器循环次数2,吞吐量值50%,勾选Per User
测试结果:查看“聚合报告”里Debug Sampler执行次数,Debug Sampler=6,即执行了6次,如图:

TestCase2:线程数3,线程循环次数2,循环控制器循环次数2,吞吐量值50%,不勾选Per User
测试结果,查看“聚合报告”里Debug Sampler执行次数,Debug Sampler=6,即执行了6次,如图:

TestCase1与TestCase2测试结果对比表:
|
线程数 |
线程组循环次数 |
控制器循环次数 |
模式 |
吞吐量值 |
Per User |
执行次数 |
|
3 |
2 |
2 |
Percent Executions |
50 |
勾选 |
6 |
|
3 |
2 |
2 |
Percent Executions |
50 |
不勾选 |
6 |
由此,得出结论:
无论Per User是否勾选,按Percent Executions模式的执行次数都不受Per User影响,Percent Executions模式的执行次数=线程数*循环次数*吞吐量%。
PS:循环次数=线程组循环次数*循环控制器循环次数。
实验二:测试按Total Executions模式执行次数
同样,按照实验一的初始条件不变:线程数3,线程循环次数2,循环控制器循环次数2,然后改变吞吐量值和是否勾选Per User来做实验。
测试的实验结果如下表:
|
线程数 |
线程组循环次数 |
控制器循环次数 |
模式 |
吞吐量值 |
Per User |
执行次数 |
|
3 |
2 |
2 |
Total Executions |
13 |
勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
13 |
不勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
12 |
勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
12 |
不勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
11 |
勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
11 |
不勾选 |
11 |
|
3 |
2 |
2 |
Total Executions |
10 |
勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
10 |
不勾选 |
10 |
|
3 |
2 |
2 |
Total Executions |
5 |
勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
5 |
不勾选 |
5 |
|
3 |
2 |
2 |
Total Executions |
4 |
勾选 |
12 |
|
3 |
2 |
2 |
Total Executions |
4 |
不勾选 |
4 |
|
3 |
2 |
2 |
Total Executions |
3 |
勾选 |
9 |
|
3 |
2 |
2 |
Total Executions |
3 |
不勾选 |
3 |
|
3 |
2 |
2 |
Total Executions |
2 |
勾选 |
6 |
|
3 |
2 |
2 |
Total Executions |
2 |
不勾选 |
2 |
分析数据,得出结论:
- 当勾选Per User时:
- 线程数*循环次数>=线程数*吞吐量时,Total Executions模式的执行次数=线程数*吞吐量。
- 当线程数*循环次数<线程数*吞吐量时,Total Executions模式的执行次数=当线程数*循环次数。
- 当不勾选Per User时:
- 线程数*循环次数<=吞吐量时,Total Executions模式的执行次数=线程数*循环次数。
- 当线程数*循环次数>吞吐量时,Total Executions模式的执行次数=吞吐量。
JMeter之Throughput Controller详解(实验)的更多相关文章
- jmeter 逻辑控制器Logic Controller详解
Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in w ...
- jmeter之Throughput Controller
jmeter之Throughput Controller Throughput Controller 这个控制器的命名不准确,因为它不是用来控制吞吐量的.吞吐量控制器允许用户控制执行频率,jmeter ...
- Asp.Net MVC part2 View、Controller详解
View详解Razor视图引擎简介HtmlHelper强类型页面 Razor视图引擎简介强大的@:表示使用C#代码,相当于aspx中的<%%>可以完成输出功能当遇到html标签时会认为C# ...
- Jmeter 正则表达式提取器详解(Regular Expression Exactor)
Jmeter 正则表达式提取器详解(Regular Expression Exactor) Name(名称):随意设置,最好有业务意义. Comments(注释):随意设置,可以为空 Apply to ...
- Jmeter(九) - 从入门到精通 - JMeter逻辑控制器 - 上篇(详解教程)
1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思 ...
- Jmeter(十) - 从入门到精通 - JMeter逻辑控制器 - 中篇(详解教程)
1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思 ...
- Jmeter(十一) - 从入门到精通 - JMeter逻辑控制器 - 下篇(详解教程)
1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思 ...
- Jmeter(十九) - 从入门到精通 - JMeter监听器 -上篇(详解教程)
1.简介 监听器用来监听及显示JMeter取样器测试结果,能够以树.表及图形形式显示测试结果,也可以以文件方式保存测试结果,JMeter测试结果文件格式多样,比如XML格式.CSV格式.默认情况下,测 ...
- 『动善时』JMeter基础 — 40、JMeter中ForEach控制器详解
目录 1.什么是逻辑控制器 2.ForEach控制器介绍 3.ForEach控制器的使用 (1)测试计划内包含的元件 (2)获取学院列表请求内容 (3)JSON提取器内容 (4)ForEach控制器内 ...
随机推荐
- win32SDK的hello,world程序(二)
接上篇,原生的控件都不太好看,所以决定自己画一个,稍微处理下消息就能用了.不过,美化这东西是需要天赋的.即使技术再好,没有对UI布局调整和良好的审美能力,做出来的东西还是很挫. 主要把消息逻辑和画的过 ...
- twemproxyMemcache协议解析探索——剖析twemproxy代码正编补充
memcache是一种和redis类似的高速缓存服务器,但是memcache只提供键值对这种简单的存储方式,相对于redis支持的存储方式多样化,memcache就比较简单了.memcache通过tc ...
- Struts2请求参数合法性校验机制
在Action中通过代码执行数据校验 请求参数的输入校验途径一般分两种:客户端校验 :通过JavaScript 完成 (jquery validation插件),目的:过滤正常用户的误操作. 服务器校 ...
- 欢迎大家Follow me!微软MVP罗勇(Dynamics CRM方向)欢迎您!
我是一名八零后,来自湖南乡村,2002年毕业于大连大学工商管理专业,主要靠自学走上了编程之路.从2012年开始接触Dynamics CRM 2011,一直从事Dynamics CRM方面工作,熟悉Dy ...
- Oracle锁表处理操作笔记
--查看锁表进程SQL语句1: SELECT sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, ...
- JMeter Plugin插件配置及远程监控
下载jmeter plugins 插件: https://jmeter-plugins.org/downloads/all/ 官网建议我们直接下载plugins-manager.jar,然后进行可选择 ...
- Oracle 11g OCM 考试大纲
考试大纲共分9部分. 一.Server Configuration 服务器配置 1 Create the database 创建数据库 2 Determine and set sizing p ...
- juquery 中 size()和length的区别 以及优缺点
size()是jQuery提供的函数,而length是属性(不带括号).jQuery提供的源代码是这样的:size: function() {return this.length;}其实也就是说,在j ...
- canvas学习总结六:绘制矩形
在第三章中(canvas学习总结三:绘制路径-线段)我们提高Canvas绘图环境中有些属于立即绘制图形方法,有些绘图方法是基于路径的. 立即绘制图形方法仅有两个strokeRect(),fillRec ...
- java 基础知识及Servlet基础