項(xiàng)目性能優(yōu)化—使用JMeter壓測(cè)SpringBoot項(xiàng)目
我們的壓力測(cè)試架構(gòu)圖如下:
配置JMeter
在JMeter的bin目錄,雙擊jmeter.bat
新建一個(gè)測(cè)試計(jì)劃,并右鍵添加線程組:
進(jìn)行配置
一共會(huì)發(fā)生4萬次請(qǐng)求。
ctrl + s保存;
添加http請(qǐng)求:
配置http請(qǐng)求:
配置斷言,來判斷當(dāng)前請(qǐng)求是否成功:
正常響應(yīng)如下:
添加斷言持續(xù)時(shí)間
添加察看結(jié)果樹:
添加匯總報(bào)告:
相似的操作,也添加聚合報(bào)告:
相似的操作,添加圖形結(jié)果:
相似的操作,添加匯總圖:
發(fā)送請(qǐng)求測(cè)試
發(fā)送請(qǐng)求
壓力測(cè)試結(jié)果解析
聚合報(bào)告
- 樣本(Sample):發(fā)送請(qǐng)求的總樣本數(shù)量
- 響應(yīng)時(shí)間(RT):平均值,P90,P95,P99,Min,Max
- 異常(Error):出現(xiàn)錯(cuò)誤的百分比
- 吞吐量(Throughput):被測(cè)試接口的吞吐能力
- 發(fā)送與接收數(shù)據(jù)量:KB/sec
察看結(jié)果樹
記錄了樣本中每一次的請(qǐng)求
匯總報(bào)告
類似于聚合報(bào)告。
線程組配置解析
-
線程數(shù):用來發(fā)送http請(qǐng)求的線程數(shù)量
- 線程組常用來模擬一組用戶訪問系統(tǒng)資源(接口)。如果接口響應(yīng)速度快,就沒必要使用太多線程數(shù),如果響應(yīng)慢,需要使用很多的線程,來測(cè)試接口能扛住的壓力。如果客戶機(jī)沒有足夠能力模擬較重負(fù)載,可以使用JMeter分布式壓力測(cè)試。
-
Ramp-up(in-seconds):建立全部線程耗時(shí):
代表隔多長時(shí)間執(zhí)行,默認(rèn)值是0,0代表同時(shí)并發(fā),用于告知JMeter要在多長時(shí)間內(nèi)建立全部線程。
-
循環(huán)次數(shù):循環(huán)執(zhí)行多少次操作
- 循環(huán)次數(shù)直接決定整個(gè)測(cè)試單個(gè)線程的執(zhí)行時(shí)間,和整體測(cè)試執(zhí)行時(shí)間。
- 單線程執(zhí)行時(shí)間 = 單請(qǐng)求平均響應(yīng)時(shí)間 * 循環(huán)次數(shù)
- 整個(gè)測(cè)試耗時(shí)= 單線程執(zhí)行時(shí)間 + (Ramp-Up - Ramp-UP / 線程數(shù))
JMeter壓測(cè)插件
Basic Graphs主要顯示:
- Average Response Time平均響應(yīng)時(shí)間
- Active Threads活動(dòng)線程數(shù)
- Successful/Failed Transactions成功/失敗事務(wù)數(shù)
Additional Graphs主要顯示
- Response Codes
- Bytes ThroughputConnect Times
- Latency
- Hits/s
開啟插件下載
下載地址: https://jmeter-plugins.org/install/Install/,官網(wǎng)上下載plugins-manager.jar直接在線下載,然后執(zhí)行在線下載即可。
下載好后放到lib\ext
下;
再把JMeter重啟;
可以看到插件管理器:
下載如下兩個(gè)插件:
安裝成功后添加如下三個(gè)監(jiān)聽器:
響應(yīng)時(shí)間:jp@gc - Response Times Over Time
活動(dòng)線程數(shù):jp@gc - Active Threads Over Time
每秒事務(wù)數(shù):jp@gc - Transactions per Second
性能關(guān)鍵指標(biāo)分析
-
TPS:每秒的事務(wù)數(shù)
數(shù)字愈大,代表性能越好;
-
QPS:每秒的查詢數(shù)量
數(shù)字愈大,代表性能越好(1TPS >= 1QPS)
-
吞吐量:每秒的請(qǐng)求數(shù)量文章來源:http://www.zghlxwxcb.cn/news/detail-841925.html
數(shù)字愈大,代表性能越好文章來源地址http://www.zghlxwxcb.cn/news/detail-841925.html
到了這里,關(guān)于項(xiàng)目性能優(yōu)化—使用JMeter壓測(cè)SpringBoot項(xiàng)目的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!