日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jmeter模拟压测真实复杂用户场景,阶梯螺纹线程组Stepping Thread Group终极线程Ultimate Thread Group并发线程Concurrency Thread Group

發布時間:2025/3/15 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jmeter模拟压测真实复杂用户场景,阶梯螺纹线程组Stepping Thread Group终极线程Ultimate Thread Group并发线程Concurrency Thread Group 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們有時需要模擬非常真實復雜的用戶壓測場景,可以用到此插件來設計場景

1、安裝插件,選項——Plugins Manager打開安裝頁面

2、搜索standard set并安裝,重啟jmeter,查看測試計劃——添加線程組——jp@gc - Stepping Thread Group (deprecated)

3、Stepping Thread Group復雜場景線程組

This group will start 100 threads【(并發數)設置單臺負載機,線程組啟動的線程總數為100個】

First,wait for 2 seconds【等待2s后開始起線程】

Then start 3 threads【設置最開始時啟動3個線程】

Next,add 10 threads every 30 seconds,using ramp-up 5 seconds:每隔5秒,在5秒內啟動10個線程【5s啟動10個線程運行30s,再5s啟動余下10個線程,再運行30s,以此類推】

Then hold load for 60 seconds【單臺負載機啟動的線程總數達到最大值100線程后,再持續運行60秒(一直在請求,相當于jmeter普通線程組里面的循環運行)】

Finally,stop 5 threads every 2 seconds【5個線程停1次,等2s再停5個線程】

?

?

舉個例子:一個線程組下包含了登陸和抽獎兩個接口

1、繼續:如果登陸接口失敗,會繼續執行抽獎接口

2、start next thread loop:主要針對循環次數>=2的時候。在loop1的時候,如果登陸接口失敗,會停止loop1開始loop2,重新執行循環接口;所以如果循環次數設置為1的時候,其實就是結束了線程。

3、停止線程:比如有50個線程,循環次數=2;線程2的登陸接口失敗之后,直接停止線程2,不再循環

4、停止測試:如果接口失敗就停止線程,但是已經執行中的線程需要等結束之后自動停止

5、stop test now:立刻停止所有線程,包括已經執行中的線程。

6、this group will start:表示總共要生成的線程數,如圖:設置為20000個,表示總共會加載到20000個線程

7、first,wait for:第一個線程從點擊執行之后多長時間開始加載,如圖:設置為0秒,表示點擊執行之后立即執行

8、then start:初次加載多少個線程,如圖:設置為1000個,表示初次會加載1000個線程(在60秒內)

9、next add:之后每次加載多少個線程,如圖:設置為5000個,表示每次多加載5000個線程

10、threads every:當前運行多長時間后再次加載線程,及每一次加載完成之后的持續時間,如圖:設置為600秒,每次加載完之后持續執行600秒

11、using ramp-up:加載線程的時間,如圖:設置為60秒,表示每一次加載需要在60秒內完成

12、then hold load for:線程全部加載完之后運行多長時間,如圖:設置為300秒,表示最后20000個線程加載完之后再持續300秒

13、finally,stop/threads every:每多長時間停止多少個線程,如圖:設置為10個和1秒,表示每1秒鐘停止10個線程

?

4、Ultimate Thread Group終極線程組、階梯線程組

提供了一個'Threads Schedule' 線程計劃表,您可以在其中配置不同的線程組。 您可以決定

線程數量('Start Threads Count')

每組開始添加到測試執行之前的延遲('Initial Delay,sec')

線程組的加速期('Startup Time') ,sec')

在減速前線程組的持續時間('Hold Load For,sec')

所有線程組應該關閉的速度('Shutdown Time')

?所有線程組同時啟動,但每個線程組都有自己的Intial Delay“初始延遲”值,這有助于分別從每個組中分離用戶。

?

示例一:

最后的10s停止階段,每s停止30線程

示例二:模擬浪潮式的壓測場景

常見的場景:

12306開始售票時用戶急劇增加

網站公布高考成績、錄取分數時,用戶急劇增加

網站投放商業促銷廣告和促銷活動,如雙11和618等活動開始時,用戶急劇增加

?

并發的用戶就像浪花一波一波的不斷涌入系統,拍打服務器,考驗我們的系統能否頂住壓力并平穩運行

我們的網站正在平穩運行的時候,突然有一波1000用戶同時訪問,我們稱之為第一浪潮。訪問了30s之后,第一浪潮在15s內逐漸退出系統。

在第一浪潮退出系統的同時,第二波2000用戶在極短時間內又突然涌入網站,我們稱之為第二浪潮。在訪問30s之后,第二浪潮在15s內也逐漸退出了系統。

在第二浪潮退出系統的同時,第三波3000用戶又突然涌入網站,我們稱之為第三浪潮。在訪問30s之后,第三浪潮在15s內也逐漸退出了系統。

在第三浪潮退出系統的同時,第四波1000用戶又突然涌入網站,我們稱之為第四浪潮。在訪問30s之后,第四浪潮在15s內也逐漸退出了系統。

5、并發線程組bzm - Concurrency Thread Group階梯式加壓

Target Concurrency:目標并發(線程數)

Ramp Up Time:加速時間

Ramp-Up Steps Count:加速步驟計數

Hold Target Rate Time:保持目標速率時間

Time Unit:時間單位(分鐘或者秒)

Thread Iterations Limit:線程迭代次數限制(循環次數)

Log Threads Status into File:將線程狀態記錄到文件中(將線程啟動和線程停止事件保存為日志文件);

?

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的jmeter模拟压测真实复杂用户场景,阶梯螺纹线程组Stepping Thread Group终极线程Ultimate Thread Group并发线程Concurrency Thread Group的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。