吞吐量(TPS)、QPS、併發數、響應時間(RT)的概念與QPS計算公式

1. 響應時間(RT)
  響應時間是指系統對請求作出響應的時間。直觀上看,這個指標與人對軟件性能的主觀感受是非常一致的,因爲它完整地記錄了整個計算機系統處理請求的時間。由於一個系統通常會提供許多功能,而不同功能的處理邏輯也千差萬別,因而不同功能的響應時間也不盡相同,甚至同一功能在不同輸入數據的情況下響應時間也不相同。所以,在討論一個系統的響應時間時,人們通常是指該系統所有功能的平均時間或者所有功能的最大響應時間。當然,往往也需要對每個或每組功能討論其平均響應時間和最大響應時間。
  對於單機的沒有併發操作的應用系統而言,人們普遍認爲響應時間是一個合理且準確的性能指標。需要指出的是,響應時間的絕對值並不能直接反映軟件的性能的高低,軟件性能的高低實際上取決於用戶對該響應時間的接受程度。對於一個遊戲軟件來說,響應時間小於100毫秒應該是不錯的,響應時間在1秒左右可能屬於勉強可以接受,如果響應時間達到3秒就完全難以接受了。而對於編譯系統來說,完整編譯一個較大規模軟件的源代碼可能需要幾十分鐘甚至更長時間,但這些響應時間對於用戶來說都是可以接受的。

2. 吞吐量(Throughput)
吞吐量是指系統在單位時間內處理請求的數量。對於無併發的應用系統而言,吞吐量與響應時間成嚴格的反比關係,實際上此時吞吐量就是響應時間的倒數。前面已經說過,對於單用戶的系統,響應時間(或者系統響應時間和應用延遲時間)可以很好地度量系統的性能,但對於併發系統,通常需要用吞吐量作爲性能指標。
  對於一個多用戶的系統,如果只有一個用戶使用時系統的平均響應時間是t,當有你n個用戶使用時,每個用戶看到的響應時間通常並不是n×t,而往往比n×t小很多(當然,在某些特殊情況下也可能比n×t大,甚至大很多)。這是因爲處理每個請求需要用到很多資源,由於每個請求的處理過程中有許多不走難以併發執行,這導致在具體的一個時間點,所佔資源往往並不多。也就是說在處理單個請求時,在每個時間點都可能有許多資源被閒置,當處理多個請求時,如果資源配置合理,每個用戶看到的平均響應時間並不隨用戶數的增加而線性增加。實際上,不同系統的平均響應時間隨用戶數增加而增長的速度也不大相同,這也是採用吞吐量來度量併發系統的性能的主要原因。一般而言,吞吐量是一個比較通用的指標,兩個具有不同用戶數和用戶使用模式的系統,如果其最大吞吐量基本一致,則可以判斷兩個系統的處理能力基本一致。

3. 併發用戶數
  併發用戶數是指系統可以同時承載的正常使用系統功能的用戶的數量。與吞吐量相比,併發用戶數是一個更直觀但也更籠統的性能指標。實際上,併發用戶數是一個非常不準確的指標,因爲用戶不同的使用模式會導致不同用戶在單位時間發出不同數量的請求。一網站系統爲例,假設用戶只有註冊後才能使用,但註冊用戶並不是每時每刻都在使用該網站,因此具體一個時刻只有部分註冊用戶同時在線,在線用戶就在瀏覽網站時會花很多時間閱讀網站上的信息,因而具體一個時刻只有部分在線用戶同時向系統發出請求。這樣,對於網站系統我們會有三個關於用戶數的統計數字:註冊用戶數、在線用戶數和同時發請求用戶數。由於註冊用戶可能長時間不登陸網站,使用註冊用戶數作爲性能指標會造成很大的誤差。而在線用戶數和同事發請求用戶數都可以作爲性能指標。相比而言,以在線用戶作爲性能指標更直觀些,而以同時發請求用戶數作爲性能指標更準確些。


4. QPS每秒查詢率(Query Per Second)
  每秒查詢率QPS是對一個特定的查詢服務器在規定時間內所處理流量多少的衡量標準,在因特網上,作爲域名系統服務器的機器的性能經常用每秒查詢率來衡量。對應fetches/sec,即每秒的響應請求數,也即是最大吞吐能力。 (看來是類似於TPS,只是應用於特定場景的吞吐量). Qps 基本類似於 Tps,但是不同的是,對於一個頁面的一次訪問,形成一個 Tps;但一次頁面請求,可能產生多次對服務器的請求,服務器對這些請求,就可計入“Qps”之中。

例如,訪問一個 Index 頁面會請求服務器 3 次,包括一次 html,一次 css,一次 js,那麼訪問這一個頁面就會產生一個“T”,產生三個“Q”。
 
5.  PV(page view)即頁面瀏覽量,通常是衡量一個網絡新聞頻道或網站甚至一條網絡新聞的主要指標。用戶每一次對網站中的每個頁面訪問均被記錄 1 次。用戶對同一頁面的多次刷新,訪問量累計。根據這個特性,刷網站的 PV 就很好刷了。與 PV 相關的還有 RV,即重複訪問者數量(repeat visitors)。
 
6.  UV 訪問數(Unique Visitor)指獨立訪客訪問數,統計 1 天內訪問某站點的用戶數(以 cookie 爲依據),一臺電腦終端爲一個訪客。可以理解成訪問某網站的電腦的數量。網站判斷來訪電腦的身份是通過來訪電腦的 cookies 實現的。如果更換了 IP 後但不清除 cookies,再訪問相同網站,該網站的統計中 UV 數是不變的。如果用戶不保存 cookies 訪問、清除了 cookies 或者更換設備訪問,計數會加 1。00:00-24:00 內相同的客戶端多次訪問只計爲 1 個訪客。根據這個特性,如果有人讓你刷 UV,也很好的刷!
 
7. IP(Internet Protocol)獨立 IP 數,是指 1 天內多少個獨立的 IP 瀏覽了頁面,即統計不同的 IP 瀏覽用戶數量。同一 IP 不管訪問了幾個頁面,獨立 IP 數均爲 1;不同的 IP 瀏覽頁面,計數會加 1。IP 是基於用戶廣域網 IP 地址來區分不同的訪問者的,所以,多個用戶(多個局域網 IP)在同一個路由器(同一個廣域網 IP)內上網,可能被記錄爲一個獨立 IP 訪問者。如果用戶不斷更換 IP,則有可能被多次統計。
 
8. GVM:所謂的 GMV,是 Gross Merchandise Volume 的簡稱。只要是訂單,不管消費者是否付款、賣家是否發貨、是否退貨,都可放進 GMV 這個“大籮筐”裏。電商是很在意 GMV 的,拼多多的優惠券事故,估計就能產生不少 GMV。根據 GMV 的統計方法,如果有人讓你幫忙刷 GMV,你就可以一直下單,然後一直退款。

 

QPS 計算規則: 

原理:每天80%的訪問集中在20%的時間裏,這20%時間叫做峯值時間。

公式:( 總PV數 * 80% ) / ( 每天秒數 * 20% ) = 峯值時間每秒請求數(QPS) 。

機器:峯值時間每秒QPS / 單臺機器的QPS = 需要的機器 。

假設每天500w PV 的在單臺機器上,這臺機器需要多少QPS?

( 5000000 * 0.8 ) / (86400 * 0.2 ) = 232 (QPS)。

一般需要達到232QPS,因爲是峯值。

如果一臺機器的QPS是60,需要幾臺機器來支持? 232 / 80 = 2.9 = 3

聚合報告各項性能指標

接口性能測試指標一般通過標準:

 

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