1. 程式人生 > >Jmeter系列(55)- 詳解 Throughput Controller 吞吐量控制器

Jmeter系列(55)- 詳解 Throughput Controller 吞吐量控制器

如果你想從頭學習Jmeter,可以看看這個系列的文章哦

https://www.cnblogs.com/poloyy/category/1746599.html

 

簡單介紹

自行調整該控制器下的子項的執行頻率

 

吞吐量控制器

 

吞吐量控制器介面介紹

有了兩個模式

  • percent execution:按照百分比來執行
  • total executions:按照次數來執行

 

欄位說明

Throughput

  • 對於 percent execution:0-100,代表執行次數的百分比,比如填 50,代表一半迭代中執行
  • 對於 total executions:代表執行的總次數

 

Per User

  • 若勾選,每個執行緒會單獨計算執行頻率
  • 若不勾選(預設),所有執行緒統一計算執行頻率

 

注意事項

雖然名叫吞吐量控制器,但並不控制控制器,只是控制子項的執行頻率(次數)

 

Total Executions 的栗子

執行緒組結構樹

 

執行緒組屬性

 

吞吐量控制器

只執行 2 次

 

檢視結果樹

取樣器111 只執行了 2 次

 

Percent Executions 的栗子

執行緒組結構樹

 

執行緒組屬性

2 個執行緒,每個執行緒迴圈 4 次

 

吞吐量控制器

迴圈只執行 50%

 

檢視結果樹

  • 取樣器222執行了 8 次,每個執行緒執行了 4 次
  • 取樣器111只執行了 4 次,每個執行緒執行了 2 次

 

勾選 per user 的栗子

執行緒組結構樹

 

執行緒組屬性

2 個執行緒,每個執行緒迴圈 3 次

 

吞吐量控制器

只執行 2 次

 

檢視結果樹

  • 取樣器222執行了 6 次,每個執行緒執行了 3 次
  • 取樣器111只執行了 4 次,每個執行緒執行了 2 次
  • 控制器對每個執行緒單獨生效

 

如果不勾選 Per User,結果樹會怎麼樣呢

  • 取樣器222執行了 6 次,每個執行緒執行了 3 次
  • 取樣器111總共只執行了 2 次,因為執行緒 1 先執行,所以只有執行緒 1 能執行取樣器111,而執行緒 2 不能執行
  • 吞吐量控制器所有執行緒共享

 

結合迴圈控制器的栗子

執行緒組結構樹

  • __iterationNum 會返回當前的迴圈次數
  • __counter 計數器

 

執行緒組屬性

2 個執行緒,每個執行緒迴圈 2 次

 

迴圈控制器

 

吞吐量控制器

只執行 2 次

 

檢視結果樹

  • 每個執行緒一共會執行 4 次
  • sampler2 均會執行 4 次
  • sampler1 均會執行 2 次,且都線上程第一次迴圈的時候,通過迴圈控制器迴圈兩次執行的