天天看點

jmeter線程組之[email protected] - Ultimate Thread Group

首先,我們來了解幾個jmeter中的概念

jmeter線程組之[email protected] - Ultimate Thread Group

 我們在添加一個線程組時通常都要配置這幾個屬性

線程數:即并發使用者數

ramp-up時間(秒):持續時間,加速時間

比如,并發數是1000個,持續時間設定為10,表示跑完1000個線程,我要花費10s,那每秒鐘就要發送100個線程

          并發數是1000個,持續時間是50s,表示50s要跑到1000個線程,那每秒鐘就是1000/50=20,每秒鐘發送20個請求

          并發數1000個,持續時間1000s,那每秒就是1s個線程。

一、準備工作

首先,我們需要安裝[email protected] - Ultimate Thread Group插件,這個不再詳述

二、配置jmeter

測試計劃-》添加-》線程(使用者)-》[email protected] - Ultimate Thread Group,配置後,如下:

jmeter線程組之[email protected] - Ultimate Thread Group

在這個線程組下面,我們再配置測試的http請求,添加一個監聽器[email protected] - Active Threads Over Time,即可檢視線程運作情況

http請求的配置這裡不再詳述,我們主要研究下[email protected] - Ultimate Thread Group  這個小可愛

建立線性負載:

如下圖,我這裡建立的就是一個線性負載,我的測試場景是60s内啟動100個線程,持續運作60s,花10s的時間結束:

這個場景就比如說,聯考成績公布,這個時候系統60s内湧入了100個使用者并發,他們通路系統持續時間60s,10s鐘都退出了系統

jmeter線程組之[email protected] - Ultimate Thread Group

運作後,檢視監聽器[email protected] - Active Threads Over Time,

把滑鼠點選到監聽器的圖上,顯示橫坐标,縱坐标。從這個監聽器的圖就可以得知,1分鐘的時候,線程總數100個,持續運作1分鐘,又花了10s停止線程,是以總共耗時了2分10s。

jmeter線程組之[email protected] - Ultimate Thread Group

 檢視聚合報告;

jmeter線程組之[email protected] - Ultimate Thread Group

 目的:

這裡的持續時間,就是要看看系統達到這些負載後,能不能穩定運作,性能會不會惡化?但是這樣的話,我們不确定這個負載量是多少,我們不确定伺服器能處理的負載量是多少,哪些負載不能處理?

是以,我們要按步驟增加負載,慢慢加上去,這就是我們的步進負載

建立步進負載:

場景:

想看系統的負載量是多少,最大負載多少,是否可以平穩運作

這裡我們就要用到多個線程組,線上性基礎上增加多個線程組。比如我想每分鐘增加25個線程,這25個線程啟動耗時話費15s,設定如下:

jmeter線程組之[email protected] - Ultimate Thread Group

 通過以上配置,觀察日志和監聽器,就可以知道系統在哪個負載下面平穩運作,能承擔多大的負載。

監聽結果

jmeter線程組之[email protected] - Ultimate Thread Group

建立波浪形測試負載:

場景:

比如12306搶票的時候,每次開放搶票時,有大量使用者湧入,等到下次開放時,又有大量使用者湧入,這個時候,就像波浪一樣,不斷敲擊伺服器,考驗伺服器的性能

這裡,我們就用到[email protected] - Ultimate Thread Group

jmeter線程組之[email protected] - Ultimate Thread Group

 配置說明:

第一個階段,花20s的時間,啟動25個線程,持續運作60s,用5s的時間停止掉

第二個階段,第一階段的線程都停止後,再開始啟動第二個階段的線程,花20s的時間再啟動25個線程,再持續60s,用5s停掉

第三個階段,等第二個線程都結束後,再花20s的時間啟動25個線程,持續60s,再停掉

這樣像波浪一樣拍打伺服器,觀察伺服器的性能,看系統是否能平穩運作。

繼續閱讀