相對並發和絕對並發
- 相對並發:指在一個時間段內發生的事情
- 絕對並發:指在同一時刻發生的事情
一:相對並發
在jmeter的測試計划中添加線程組,設置線程屬性,2秒之內啟動2000個線程,其對應的相對並發為1000(線程數/啟動時間)
二:絕對並發
一般使用同步定時器實現絕對並發,即當所有請求集合完畢之后一塊出發
1、jmeter線程組里面可以簡單設置多線程,但是當你設置1秒鍾50個線程時去看結果其實50個請求跑完並不是在1秒鍾之內
2、由於測試的機器本身性能的影響或者是路由寬帶等等,2000個請求跑完需要8秒,這時請求里面可以添加個同步定時器(相當於排隊集合點),就是在這里等2000個人齊了再一起出發
3、在運行的時候可以看到2000個請求集齊了才會發送請求,查看結果樹里面在請求沒有集齊時是不會有數據的。
(1)模擬用戶組的數量:為到集合點釋放的線程數
(2)超時時間
- 超時時間如果設置為0,線程將會等待線程數達到了設置的值才釋放。如果線程數不足集合點中設置的數,就會一直處於等待當中。
- 如果設置時間大於0,那么如果超過設置的最大等待時間后還沒達到模擬用戶組中設置的值,線程組將不再等待,釋放已到達的線程。
4、注意:
- 如果超時時間設置為0的話,「模擬用戶組的數量」一定要確保設置的值不大於它所在線程組包含的用戶數,或者最好是集合數與線程數為整數倍的關系 。
否則會線程數量無法達到模擬用戶組的數量,Test將無限等待,除非手動終止。
比如:總線程數2000,模擬用戶組的數量1200,在執行完成第一個1200之后,剩余800線程永遠集不齊1200,需要手動終止,已經集齊的800也不會完全被執行。
- 使用同步定時器做性能測試時,聚合報告中的響應時間一般會大於接口真實的響應時間,可以通過其他的監控工具查看接口真實的響應時間