前言:這裏對壓測進行一些簡介,本篇介紹項目壓測場景,使用jmeter進行壓測。
壓測相關的一些指標:
- QPS(Queries Per Second):每秒能夠響應的查詢次數,也即是最大吞吐能力(吞吐量)。
- TPS(Transactions Per Second):每秒處理的事務數目。一個事務是指一個客戶端向服務器發送請求然後服務器做出反應的過程。TPS 的過程包括:客戶端請求服務端、服務端內部處理、服務端返回客戶端。
例如,訪問一個頁面會請求服務器 3 次,那麼訪問這一個頁面就會產生一個TPS,三個QPS。
安裝Jmeter
- jmeter官網:https://jmeter.apache.org
- 解壓後,進入bin目錄,使用jmeter.bat啓動程序。
- 注意:因爲JMeter是使用JAVA寫的,所以使用JMeter之前,先安裝JAVA環境,這個自行搜索安裝。.
- 改爲中文顯示:Options -> Choose Language 改爲簡體中文
項目壓測
項目壓測包含了web程序 + 數據庫 + 緩存 +其他等指標,體現出了項目整體的性能,比較有參考意義,如果程序性能比較低,可對其他指標進行壓測來查找原因(性能瓶頸一般出現在數據庫)。
- 創建線程組
在“測試計劃”上右鍵 【添加】->【線程(用戶)】->【線程組】
設置線程數和循環次數,我這裏設置線程數爲1000,循環10次
- 配置元件
在線程組上右鍵【添加】->【配置元件】->【HTTP請求默認值】
配置 HTTP請求默認值:協議、服務IP、端口
- 添加 Http請求
在“線程組”右鍵 【添加-】->【取樣器】->【HTTP 請求】
設置路徑和數據(參數可錄入簡單類型,消息體數據可錄入json)
如果是json數據,需要添加HTTP信息頭管理器
在線程組上右鍵 【添加】->【配置元件】->【HTTP信息頭管理器】,添加 Content-Type:application/json
- 添加監聽器(這裏截圖是測試後的)
線程組上右鍵【添加】->【監聽器】->【聚合報告】
線程組上右鍵 【添加】->【監聽器】->【察看結果樹】
- 執行測試
下圖的綠色按鈕爲開始執行,如果要重新執行需清除上一次結果。