如何對(duì)Web服務(wù)器做壓力測(cè)試
公司的Web服務(wù)器搭建完成,上線在即。它能夠承載多大的訪問量,響應(yīng)速度和容錯(cuò)能力等性能指標(biāo)是否滿足要求,所有這些都是我最想知道,也最為擔(dān)心的。如何才能知曉這一切呢?
通過工具可以有效地測(cè)試Web服務(wù)器的運(yùn)行狀態(tài)和響應(yīng)時(shí)間等性能指標(biāo),從而解決上述問題。下面以Web Application Stress Tool(簡(jiǎn)稱WAST)為例,介紹如何進(jìn)行Web壓力測(cè)試。這是由微軟的網(wǎng)站測(cè)試人員開發(fā)的專門用來進(jìn)行實(shí)際網(wǎng)站壓力測(cè)試的一套工具。
測(cè)試工具的設(shè)置
下載并安裝WAST,過程極其簡(jiǎn)單。在對(duì)目標(biāo)Web服務(wù)器進(jìn)行壓力測(cè)試之前,首先要對(duì)它進(jìn)行一些必要的設(shè)置。
1.設(shè)置并行連接數(shù)
點(diǎn)擊“Defaults→Settings”打開設(shè)置面板。在Concurrent Connections下進(jìn)行并行連接設(shè)置。Stress Level(Threads)是最少線程,Stress Multiplier是最大線程。這里的線程是指定程序在后臺(tái)用多少線程進(jìn)行請(qǐng)求,也就是相當(dāng)于模擬多少個(gè)客戶機(jī)的連接,一般填寫500~1000。這個(gè)線程數(shù)是根據(jù)本機(jī)的承受力來設(shè)置的,如果你對(duì)自己的機(jī)器配置有足夠信心的話,那么可以設(shè)置得更高一些。
2.設(shè)置持續(xù)時(shí)間
在“Test Run Time”中用來指定一次壓力測(cè)試需要持續(xù)的時(shí)間,分為天、小時(shí)、分、秒幾個(gè)單位級(jí)別,比如我們?cè)O(shè)置為1個(gè)小時(shí)。
3.其余設(shè)置
用Rpquest Delay設(shè)置延遲時(shí)間,我們?cè)O(shè)置為100~500。用Suspend設(shè)置設(shè)定掛起時(shí)間,Warmup時(shí)間是初始化測(cè)試運(yùn)行時(shí)間,Cooldown時(shí)間是指定結(jié)束階段的測(cè)試時(shí)間。Bandwith指定帶寬瓶頸,允許模擬從14.4 kbps的Modem連接到T1(1.5 Mbps)的Local Area Network(LAN)連接的網(wǎng)絡(luò)帶寬。Redirects設(shè)置重定向時(shí)間,Throughput用來設(shè)置用戶、密碼頁(yè)面狀態(tài)保存等是否啟用,Name Resolution用來設(shè)置是否進(jìn)行名稱解析。所有以上的選項(xiàng)大家可以根據(jù)自己的需要進(jìn)行設(shè)置。
壓力測(cè)試的步驟
設(shè)置完成后就可以進(jìn)行壓力測(cè)試。測(cè)試的步驟如下:
第一步,點(diǎn)擊工具欄上的“New Script”按鈕,在打開的面板中點(diǎn)擊“Nanual”按鈕創(chuàng)建一個(gè)新的測(cè)試項(xiàng)目。在打開的窗口中對(duì)它進(jìn)行設(shè)置,在主選項(xiàng)中的Server中填寫要測(cè)試的服務(wù)器的IP地址。這里我們填寫192.168.1.20。在下方選擇測(cè)試的Web連接方式,這里的方式Verb選擇get。Path選擇要測(cè)試的Web頁(yè)面路徑,這里填寫/Index.asp即動(dòng)網(wǎng)的首頁(yè)文件,WAST可以設(shè)置更多的Path。
第二步,在“Settings”功能設(shè)置中將Stress Level (Threads)線程數(shù)設(shè)置為1000。然后點(diǎn)工具中的灰色三角按鈕即可進(jìn)行測(cè)試。測(cè)試過程中我們可以從服務(wù)器的任務(wù)管理器中看到CPU使用率已經(jīng)達(dá)到100%,損耗率達(dá)到最大。在CMD窗口中使用命令netstat -an,可以看到客戶端的IP地址在服務(wù)器上的80端口進(jìn)行了非常多的連接,而且Web網(wǎng)站已經(jīng)打不開了,提示過多用戶連接。
通過壓力測(cè)試,管理員對(duì)Web服務(wù)器的抗壓能力有了大概了解,可根據(jù)實(shí)際需要進(jìn)行服務(wù)器硬件擴(kuò)展,也為系統(tǒng)設(shè)置和軟件選擇等提供依據(jù)。Web服務(wù)器在正式發(fā)布前進(jìn)行壓力測(cè)試是非常必要的。
評(píng)論