天天看點

系統性能測試的關鍵評價名額

通常,衡量一個軟體系統性能的常見名額有:

1.響應時間(Response time)

響應時間就是使用者感受軟體系統為其服務所耗費的時間,對于網站系統來說,響應時間就是從點選了一個頁面計時開始,到這個頁面完全在浏覽器裡展現計時結束的 這一段時間間隔,看起來很簡單,但其實在這段響應時間内,軟體系統在幕後經過了一系列的處理工作,貫穿了整個系統節點。根據“管轄區域”不同,響應時間可 以細分為:

(1)伺服器端響應時間,這個時間指的是伺服器完成交易請求執行的時間,不包括用戶端到伺服器端的反應(請求和耗費在網絡上的通信時間),這個伺服器端響應時間可以度量伺服器的處理能力。

(2)網絡響應時間,這是網絡硬體傳輸交易請求和交易結果所耗費的時間。

(3)用戶端響應時間,這是用戶端在建構請求和展現交易結果時所耗費的時間,對于普通的瘦用戶端Web應用來說,這個時間很短,通常可以忽略不計;但是對 于胖用戶端Web應用來說,比如Java applet、AJAX,由于用戶端内嵌了大量的邏輯處理,耗費的時間有可能很長,進而成為系統的瓶頸,這是要注意的一個地方。

那麼客戶感受的響應時間其實是等于用戶端響應時間+伺服器端響應時間+網絡響應時間。細分的目的是為了友善定位性能瓶頸出現在哪個節點上(何為性能瓶頸,下一節中介紹)。

2.吞吐量(Throughput)

吞吐量是我們常見的一個軟體性能名額,對于軟體系統來說,“吞”進去的是請求,“吐”出來的是結果,而吞吐量反映的就是軟體系統的“飯量”,也就是系統的 處理能力,具體說來,就是指軟體系統在每機關時間内能處理多少個事務/請求/機關資料等。但它的定義比較靈活,在不同的場景下有不同的诠釋,比如資料庫的 吞吐量指的是機關時間内,不同SQL語句的執行數量;而網絡的吞吐量指的是機關時間内在網絡上傳輸的資料流量。吞吐量的大小由負載(如使用者的數量)或行為 方式來決定。舉個例子,下載下傳檔案比浏覽網頁需要更高的網絡吞吐量。

3.資源使用率(Resource utilization)

常見的資源有:CPU占用率、記憶體使用率、磁盤I/O、網絡I/O。

4.點選數HPS(Hits per second)

點選數是衡量Web Server處理能力的一個很有用的名額。需要明确的是:點選數不是我們通常了解的使用者滑鼠點選次數,而是按照用戶端向Web Server發起了多少次http請求計算的,一次滑鼠可能觸發多個http請求,這需要結合具體的Web系統實作來計算。

5. TPS - TPS:Transaction per second,每秒鐘系統能夠處理的交易或者事務的數量。它是衡量系統處理能力的重要名額。

6.并發使用者數(Concurrent users)

并發使用者數用來度量伺服器并發容量和同步協調能力。在用戶端指一批使用者同時執行一個操作。并發數反映了軟體系統的并發處理能力,和吞吐量不同的是,它大多是占用套接字、句柄等作業系統資源。

另外,度量軟體系統的性能名額還有系統恢複時間等,其實凡是使用者有關資源和時間的要求都可以被視作性能名額,都可以作為軟體系統的度量,而性能測試就是為了驗證這些性能名額是否被滿足。