? ? ? ?在對后臺開發完成后,使用postman完成對系統的接口功能測試后,由于前端還未完成,我一直考慮如何對系統后端進行壓力測試,知道我了解了Jmeter這款強大的測試工具。
? ? ? ?下面我就介紹一下我從0到1的壓測過程吧。我下載的是apache-jmeter-2.13。因為這個包下載下來通用linux和windows的,所以我們現在windows下打開它。
直接點擊bat,打開jmeter:
添加一個線程組:
添加完成之后,先設置這兩項:
然后右擊左邊的線程組,添加一個http請求
添加完成之后,我們可以看到右邊有了可以編輯的地方:
這里打算壓測這樣一個url,這個url請求是?https://ivmai.cn?
系統后端壓力測試使用的工具為jmeter,如圖5.8為開始對系統的首頁進行壓力測試。下圖表示為100個線程并發測試過程中的請求成功。
下圖對系統首頁壓測過程
在測試過程中,如果手動去強制停止的話,最后的幾條請求會因為手動停止而拋出異常,因此通過設定請求次數,請求次數達到后就自動結束。本次測試通過將線程數和循環次數的乘積等于一個固定值,然后變換兩個乘數。本次測試選擇的線程數分別是10、20、50、100,得到的結果如圖5.9所示。將圖5.9結果分別用曲線圖表示,如圖5.10、5.11、5.12可以很直觀的看出平均響應時間隨著線程數的增加不斷的增加,線程數在達到60以上后錯誤率的增長速率變高。對于本系統這樣一個初創系統,在當前的硬件條件下,這樣的壓力測試結果是符合預期的,若后期系統的訪問量不斷增高,可以通過增加服務器,分離數據庫和后端服務等降低服務器的負擔,提升系統響應速度。下圖為線程數分別為10,20,50,100測試結果表
下圖為不同線程數對應的平均響應時間和90%Line
下圖為不同線程數對應的錯誤率和99%Line
下圖為不同線程數對應的吞吐量