圖解用WAS對Web服務器進行壓力測試

圖解用WAS對Web服務器進行壓力測試

你的Web服務器能夠支持多少個併發用戶的訪問呢?你遇到過服務器遭受過DDOS的***而癱瘓嗎?在這裏給大家介紹微軟網站測試人員開發的著名網站壓力測試軟件,MicrosoftWeb Application Stress ToolWASWeb應用負載測試工具),而且還是免費的哦。其下載地址:[url]http://download.microsoft.com/download/a/8/2/a82e7ba7-c772-4ec4-b186-2cf147f42c11/setup.exe[/url]WAS是一款網站性能測試評估軟件。它通過模擬大量併發用戶同時訪問服務器,以獲取服務器的承受能力。像這種軟件是把“雙刃劍”,就看你用在哪一方面啦。如果沒用好就會給你的服務器造成一定的損失,用好了可以及時的發現你的服務器能承受多大壓力負載。以便及時的採取相應的措施防範。要對網站進行負載測試首先需要創建WAS腳本來模擬用戶訪問等活動。創建腳本的方法:通過記錄瀏覽器的活動;通過導入IIS日誌;通過把WAS指向Web網站的內容;或者手工製作。這裏我用是通過記錄瀏覽器事件生成的腳本的一部分,  一:測試前的準備1.  在測試前清空IE瀏覽器其它網站的緩存和Cookies等臨時文件。二:測試腳本製作1.  打開WAS,點擊Record  2.勾選要記錄的活動 3.點擊Finish 4.這時自動彈出一個瀏覽器新窗口,即開始記錄你的瀏覽的內容。這時開始訪問你要測試的網頁。 5.在你訪問你的服務器時,WAS都記錄了這些活動,訪問完成後點擊Stop Recording結束記錄。 6.這時在腳本頁可以看到收集到的腳本,在Server欄輸入服務器的IP地址。 7.刪除延遲小的元素 8.可以用Ctrl鍵同時選中多個,然後點擊工具欄的刪除按鈕刪除  9.點擊Settings,在這裏可以設置例如發起的連接數,熱身時間,帶寬限制,以及測試要運行多長時間等參數。 Stress LevelStress multiplier這二個項決定了訪問服務器的併發連接的數量。其中Level是客戶端所產生的線程數,一個線程可以產生多個Socket併發請求,因此兩者的數值相乘所獲得的數值纔是客戶端同時發起連接併發數微軟建議這這個Stress Level值不要超過100。如果要模擬的併發連接數量超過100個,可以調整Stress multiplier的值或使用多個客戶機來測試 時間設置包括“Test Run Time”(測試運行時間)和“Request Delay”(停止響應)以及“Suspend”(掛起時間)三項。其中測試運行時間是以日、小時、分鐘、秒的格式來設定的,建議該項時間不宜太短,如果設置的併發數較多,那麼時間應該按比較增長,以便產生足夠多的請求;而停止時間是指連接時超出這個時間即作超時處理; warmup(熱身)時間,一般可以設置爲1~3分鐘。在warmup期間WAS開始執行腳本,但不收集統計數據。warmup時間給MTS、數據庫以及磁盤緩衝等一個機會來做準備工作。如果在warmup時間內收集統計數據,這些操作的開銷將影響性能測試結果。 限制帶寬(throttle bandwidth)。帶寬限制功能能夠爲測試模擬出Modem14.k K28.8 K56 K)、ISDN64 K128 K)以及T11.54 M)的速度。使用帶寬限制功能可以精確地預測出客戶通過撥號網絡或其他外部連接訪問Web服務器所感受的性能。 .測試壓力1.點擊工具欄的開始運行按鈕 2.點擊Run Test開始測試 3.正在測試服務器壓力,time left的時間爲剩餘時間.如果設置了熱身時間則會先出現倒計時爲WARMUP的 4.如果提示RPC服務不可用,請查看PRC服務是否開啓,並設置成自動. 還可能是你的腳本錯誤,這種情況下刪除當前腳本,重新收集就沒問題啦   5.這時可以用netstat –an 來查看是否開啓了很多連接,其中stateestablished的表示已連接上   6.查看CPU大部分進程都被Webtool所佔用 7.查看CPU的使用率 8.用性能監視器查看當前性能 9.查看服務器端的性能 四.查看測試報告,分析數據1.點擊工具欄的報告,查看測試報告 2.着重查看“Socket Errors”部分和“Result Codes”部分。其中Socket Errors部分共分爲ConnectSend RecvTimeouts。其中Connect表示客戶端不能與服務器取得連接的次數;Send表示客戶端不能正確發送數據到服務器的次數;Recv表示客戶端不能正確從服務器連接次的次數;Timeouts表示超時的線程數目。如果這四個數值都比較小,甚至爲0則說明這個服務器是經得起考驗的;如果數值居高不下,甚至接近設置的併發數,那麼則要好好的檢查你的服務器了 Result Codes”部分,如果Code列表下的數值都爲200,那麼表示所有請求都經服務器成功返回,如果數值出現400或大於400,例如404,那麼則需要在左側找到“Page Data”節點,查看具體的錯誤項目,然後作出相應的修改。  3.速度 4連接數,服務器IP,.時間參數5.測試最好由多臺客戶機來測試,不要在一臺測試機上設置超大的連接數Stress Level,且這些測試機分佈在不同的地方。在你測試服務器的內網會出現網頁無法顯示,訪問其他網站的網頁也打不開,這時可以讓不跟你在同一個局域網內的朋友訪問試一下你的服務器。不斷的增加或減少連接數,經過多次測試才知道這個服務器能承受多大壓力。如果是IIS搭建的服務器還可以修改允許的最大連接數。得到數據後分析數據,服務器資源分佈,響應處理速度,大量用戶或遭到***時該採取哪些相應的措施,以及性能優化。  (爲了大家更好的訪問51CTO,請大家不要以51cto爲服務器做壓力測試。我這裏只是爲了宣傳51cto才用的,並設置的連接數也不大。)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章