jmeter壓測學習29-定時器之同步定時器Synchronizing Timer(設置集合點)


前言

LoadRunner 中可以設置一個集合點,設置多個虛擬用戶等待到一個時間點,到齊后一起發請求達到並發的目的。
集合點概念:阻塞線程,直到指定的線程數量到達后,再一起釋放,可以瞬間產生很大的壓力
jmeter 中使用同步定時器 Synchronizing Timer實現 LoadRunner 中集合點的功能,模擬多用戶並發測試,即多個線程在同一時刻並發請求。

同步定時器 Synchronizing Timer

在HTTP請求的樣本下添加-定時器-同步定時器

有2個參數設置

  • 模擬用戶組的數量(Number of Simulated Users to Group by) 也就是並發數,集合多少請求后一起發出去
  • 超時時間以毫秒為單位(Timeout in milliseconds) 指定人數多少秒沒集合到算超時,默認為0,會一直等。設置500毫秒的話,如果500毫秒內湊齊並發數,就先發出去了。

並發請求

先禁用同步定時器,線程組設置30,循環一次

運行后用表格查看結果,會看到starttime沒有重復的,說明沒有並發的請求

打開同步定時器,設置模擬用戶組的數量為3,也就是3個並發,超時先設置為0

再次運行,就可以看到在同一時間會發出3個請求(這里不是絕對的,會更接近3個並發)

那么這里設置的並發數,會等線程數達到這個數量后一起發出去,起到並發的作用

超時時間

前面設置線程數30,並發3,剛好每湊齊3個請求一起發出去。如果線程數30,並發為7,最后還有2個請求湊不齊會怎樣?

可以看到右上角有2個線程會一直等待,不會自動結束,因為前面超時時間為0,就一直等待。

為了避免這種一直等待的情況,可以設置同步定時器的超時時間,比如我設置500毫秒,如果500毫秒還沒湊齊7個請求,那就先發出去,不用一直等了。

運行后,查看結果

原文地址https://www.cnblogs.com/yoyoketang/tag/jmeter/,轉載請注明出處!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM