測試一波SpringBoot的HTTP吞吐量


本來,其實就我個人而言現在很少去弄性能這一塊的陣地了,主要在做設計與架構,不過前幾天剛剛關注公眾號的羅哥給我拋了關於性能方面的問題。

 

 

 

一個問題立馬引起了我的興趣,太久沒弄性能方面的事情了,所以在隔天有空的時候就立馬動手測試了一下。

 

當然這個性能是在本機測的,所以還要看本機的配置。以下是我的機子的配置。

 

 

 

 

你需要准備的是一個自己寫的應用程序與JMeter,可能有一部分人還沒有弄過Jmeter,大家可以去網上找一下,安裝下載包括測試都有很多教程了。

 

應用程序這里就不說了,SpringBoot或者SSM等其他的都可以。

 

Jmeter的幾個簡單步驟說一下:

 

1、創建用戶組

 

 

 

2、設置用戶組參數

 

線程數是測試的變量,下面的兩個參數,大家可以和我一致,如果自己的機子性能比較差,那就設置低一點。

 

 

 

3、HTTP取樣

 

最重要的,讓JMeter測試什么,你總要說清楚

 

 

 

4、HTTP取樣參數設置

 

這個就改為你的應用程序參數

 

 

 

5、HTTP的響應斷言

 

 

 

6、響應斷言設置

 

做簡單的,直接看返回代碼是不是200

 

 

 

7、查看效果與報告

 

然后對線程組加監聽器了,這個看你想看到什么結果報告,一般選聚合報告,我們就可以看吞吐量。

 

 

 

開始測試啦!

 

測試參數我將線程組即用戶數設置為三組:100、200、300

 

應用程序我用了兩套,一套是同步,一套是Deferred的異步處理,並且都模擬生產在線,每個請求都休眠2s后返回結果。

 

Github地址如下:https://github.com/UncleCatMySelf/Spring-Tutorial

 

接着啟動項目再用JMeter去測試就好啦,相對還是比較簡單的。

 

線程數100的 我就不拿出來了 ,雙方的吞吐量都差不多。

 

線程數200的,正常情況下

 

 

 

線程數200的,Deferred情況下

 

 

 

線程數300的,正常情況下

 

 

 

線程數300的,Deferred情況下

 

 

 

可以很明顯的看到,在線程數(用戶數)不斷上升的情況下,異步的吞吐量性能更加優越。

 

好啦,本章就先說到着了。

 

感謝閱讀。

 



免責聲明!

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



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