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