前段時間應領導要求對公司的一個網站首頁進行訪問量壓力測試,由于本人對測試不是很精通(壓力測試更是無從下手,后了解有個開源的Jmeter可以進行壓力測試),但是硬著頭皮答應了下來。下文既我所謂的測試報告,請指正。
測試目標:
1) 模擬測試每秒鐘有15個人同時訪問該頁面行不行?
2) 模擬測試每天有10萬人訪問該頁面行不行?
測試環境:
1) 服務器:
·硬件配置:Intel(R) Xeon(R) CPU E5335 @ 2.00GHz,2顆4核, 8G內存;
·操作系統:Linux操作系統,RHEL 5.3;
·應用服務器:Tomcat6.0(大線程樹設為1000);
2) 客戶端機器
·WINXP操作系統,CPU2.53GHz,內存3.25G
3) 測試軟件:Jmeter 2.3.2 版本
測試內容:
1) 同時能訪問**.com.cn頁面的人數
根據市場部提供信息,該頁面在9:00-11:00這兩個小時,訪問尤其突出,基本上占到全天訪問量的50%左右,以后每天訪問量將會有5W-10W,這里以10W為基準數據計算,則可由下述數據:
·每天訪問量,記為A,則A=100000;
·9:00-11:00這兩個小時的訪問量,計為HA,則HA=A*50%=50000;
·每秒平均訪問量記為SA,則SA=HA/(2*60*60) = 7;
·根據通用規則,SA的峰值為SA = SA+3*SQRT(SA) = 7+8 = 15;
通過上述分析,只要服務器能處理每秒鐘15個人同時訪問該頁面即可。
測試參數設置:每秒激發100個線程(相當于每秒100個用戶同時訪問),循環5次(模擬5次)。
測試結果:
測試結果分析:在每秒鐘有100個人同時訪問該頁面的情況下,每個用戶顯示頁面的平均時間為10秒,小時間為3.7秒,大時間為22秒,出錯率為0。根據測試結果顯示,每秒鐘并發15個沒問題,但是流量有點高4.2M/秒。
2) 能訪問Wahahaclub.wahaha.com.cn頁面的多人數模擬
測試9:00-11:00,這2小時內,50000用戶是否可以正常顯示頁面即可,由于測試機器原因,這里只測試了2個小時36000用戶訪問該頁面的情況。
測試參數設置:每720秒激發3600個線程,循環10次(模擬10次)。
測試結果:
測試結果分析:總共應該有36000個樣本,只顯示32400個樣本,那是因為有3600個樣本,在該測試時間范圍內在另外一臺筆記本上進行了測試(筆記本測試得出3600個線程可以正常顯示頁面)。測試結果顯示36000個線程顯示頁面的平均時間不到1秒,小的為0.4秒,大為51秒,90%都可在不到1秒內顯示頁面,流量還是有點大2.4M/秒。