使用Application Center Test (ACT)來做壓力測試

在我們完成了基於SPS2003的開發,實現了我們的具體應用以後,我們是不是就可以直接請用戶來使用了呢?如果我這麼做,那麼有經驗的開發人員一定會對此嗤之以鼻:居然連壓力測試也不做!真是不想活了……

 

呵呵,是啊。開發環境往往只考慮功能,到了具體環境中,就需要考慮有大量的用戶來訪問的時候,很多功能會不會出錯?性能會怎麼樣呢?……我們這裏就簡單看看,怎麼來做壓力測試。

 

相信作壓力測試肯定有很多工具,而我們一般使用的,現在很多是Application Center Test (ACT)。這個東東是VS.NET中的一個組建,很簡單,容易上手,而且支持腳本,也可以實現複雜的功能……

 

這裏省略測試步驟,假設我們只是直接對一個網站做測試,例如Test.SendRequest("http://server/default.aspx")。現在怎樣來分析結果呢?

 

下面是我剛學到的一些信息,和大家共享,希望對於有經驗的朋友,起一個拋磚引玉的功能。

 

1. 首先,檢查一下又沒有錯誤,例如401用戶沒有驗證的錯誤。如果有錯誤,那麼結果肯定是不對的,也不用看了。

 

2. 分析Average requests per second,應該就是“每秒平均請求”。

 

我們可以多測試幾次,使用1、2、5、10、50、100、200……的併發瀏覽器連接數目。然後,我們可以把幾次結果放在一個圖表中來分析。

 

一般情況下,隨着併發瀏覽器連接數目的增加,Average requests per second的數目也會增加,但當到了某一個值以後,再增加就反而導致Average requests per second下降了。那麼,這個值就差不多是服務器能支持的最大併發瀏覽器連接數目。

 

3. Average time to last byte

 

是發送請求以後,到收到服務器響應結束的時間。

 

顯然,一般情況下,隨着併發瀏覽器連接數目的增加,這個值是會隨着變大的。一般情況下,分析這個值是不是合理,可以參考下面的標準:

 

0.1秒:       非常快了

1秒:          速度還是非常快的,基本不用考慮性能問題

3 – 4秒:    對於內部網絡,可以接受的一個結果

5 – 8秒:    對於外部網絡,可以接受的一個結果

10秒以上:   太慢了一些

 

4. Average time to first byte

 

一樣,只不過是發送請求以後,到收到服務器響應開始的時間。

 

歡迎大家討論,發表關於ACT的經驗。

posted on Tuesday, December 21, 2004 4:27 PM

發佈了55 篇原創文章 · 獲贊 3 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章