對於服務器性能測試這塊的經驗更是少得可以忽略。迫使不得不讓我們去嘗試了解測試的知識。
首先我們的需求場景如下:
服務器硬件:(只有一台)
系統:Windows 2003
WebServer:Tomcat 7.0
Jdk:7.0
CPU:8核 2.9GHz兩個
內存:16G
報名應用系統:只需要向外提供一個報名和找回報名號的接口。
我們需要:測試服務器能同時承受多少條HTTP請求。
通過各種百度后發現LoadRunner是好,但是使用起來短時間內比較難上手,然后就找到了Jmeter。
一、運行Jmeter:
首先在網上下載一個jmeter,我下載的是2.3.4版本,其他版本同理
通過解壓后得到一個tgz格式的文件,然后再繼續解壓得到一個文件夾如下圖:
打開文件夾運行bin目錄下的 jmeter.bat即可進入jmeter的主界面,如圖:
假如運行 jmeter.bat報錯不能正常打開,那就要檢查本機是否有安裝JDK,如果能保證安裝好JDK和配置好環境變量后,可以嘗試直接運行
bin目錄下的ApacheJMeter.jar,我是打不開jmeter.bat的提示我創建不了JAVA虛擬機,但是運行ApacheJMeter.jar卻能正常進入主界面,不
能正常運行的可以嘗試一下這種辦法。
二、創建一個線程組
三、設置線程組參數
四、創建HTTP請求
五、配置HTTP請求
六、添加運行結果分析監聽器
七、聚合報告
八、圖形結果
九、總結
我們按照如上步驟設置好參數后,對應用進行了並發測試(測試時保持了測試機器和服務器同一個內網網段),第一次模擬100個用戶並發請求(請求需要通過查詢
具有1000條數據的數據表)持續執行10分鍾,偏移保持在100以下,第二次模擬200個用戶,偏移還是保持在100以下,第三次模擬350個用戶時,偏移則保持在100左右。
而且服務器CPU狀態良好,使用率一直保持在20%左右,最高不超過25%。為什么服務器CPU的使用率沒有達到很高的情況下,而偏移會越來越高呢,我猜測可能跟Tomcat
沒進行優化有關。最后我們認為該應用的並發量大概是在350-400之間。