一、Throughput Controller(吞吐量控制器)
Throughput controller(吞吐量控制器),用来控制其下元件的执行次数,并无控制吞吐量的功能。控制吞吐量的元件是:Constant Throughput Timer;
Throughput controller(吞吐量控制器)有两种模式可供用户进行设置,已达到控制每片段脚本的执行次数;模式包含:Percent Executions与 Total Executions;下面说一下面板参数:
根据实际操作,发现很多博客都说错了;下面就说一下"这两种模式+是否勾选Per User"的实现效果;所有举例的前提条件:线程数:5、循环数:2 ;
下面就基于这个条件,看不同情况下,throughput controller的效果吧!
二、模式一:Percent Executions + 不勾选Per User :
情况一:线程组中Throughput Controller数量:1;
其下元件执行次数num=线程数*循环数*吞吐量%,若num<=线程数,则其下元件执行次数=num;若num>线程数,则其下元件执行次数=线程数;
1.num<=线程数的情况:执行次数为num
1.num>线程数的情况:执行次数为线程数
情况二:线程组中Throughput Controller数量:大于1个,每个Throughput Controller的吞吐量计算下来(执行次数num=线程数*循环数*吞吐量%)都没有超过线程数;则每个Throughput Controller下元件的执行次数=其所属Throughput Controller的(执行次数num=线程数*循环数*吞吐量%),若出现小数的情况,则按照“0.5舍去,大于0.5取1”取整计算;
【若多个Throughput Controller的percent executions模式下的吞吐量之和大于100%,其运行次数还有其它规律……尚未明确】
三、模式一:Percent Executions + 勾选Per User :
情况一:线程组中Throughput Controller数量:1;
其下元件执行次数num=线程数;情况是:若循环数*吞吐量% <=0.5,则其下元件不执行;若循环数*吞吐量% >0.5,则其下元件执行次数=线程数;
1.吞吐量%*循环数<=0.5:不会执行其下的元件
2.吞吐量%*循环数>0.5:其下的元件的执行次数=线程数;
四、模式二:Total Executions + 不勾选Per User :
Throughput Controller其下的元件执行次数:num=吞吐量,若num<线程数,则执行次数=num;若num>线程数,执行次数=线程数;(就不截图了)
五、模式二:Total Executions + 勾选Per User :
Throughput Controller其下的元件执行次数:线程数;
备注:第四、第五与资料上不一样……,不知是否正确啊……有没大神指导,但是我操作出来的结果就是这样……