我們在日常工作中,特別是在互聯(lián)網(wǎng)行業(yè)經(jīng)??梢月牭綌?shù)據(jù)分析之類的專有名詞,如pv多少、ip多少、tps多少之類的問題。下面就這些常見的數(shù)據(jù)給出英文全稱及其釋義。
QPS:即Queries Per Second的縮寫,每秒能處理查詢數(shù)目。是一臺服務(wù)器每秒能夠相應(yīng)的查詢次數(shù),是對一個特定的查詢服務(wù)器在規(guī)定時間內(nèi)所處理流量多少的衡量標(biāo)準(zhǔn)。
每秒鐘處理完請求的次數(shù);注意這里是處理完,具體是指發(fā)出請求到服務(wù)器處理完成功返回結(jié)果。可以理解在server中有個counter,每處理一個請求加1,1秒后counter=QPS。
TPS:即Transactions Per Second的縮寫,每秒處理的事務(wù)數(shù)目。一個事務(wù)是指一個客戶機向服務(wù)器發(fā)送請求然后服務(wù)器做出反應(yīng)的過程??蛻魴C在發(fā)送請求時開始計時,收到服務(wù)器響應(yīng)后結(jié)束計時,以此來計算使用的時間和完成的事務(wù)個數(shù),最終利用這些信息作出的評估分。
RPS:即Requests Per Second的縮寫,每秒能處理的請求數(shù)目。等效于QPS。
PV:即 page view,頁面瀏覽量 用戶每一次對網(wǎng)站中的每個頁面訪問均被記錄1次。用戶對同一頁面的多次刷新,訪問量累計。
UV:即 Unique visitor,獨立訪客 通過客戶端的cookies實現(xiàn)。即同一頁面,客戶端多次點擊只計算一次,訪問量不累計。
IP:即 Internet Protocol,本意本是指網(wǎng)絡(luò)協(xié)議,在數(shù)據(jù)統(tǒng)計這塊指通過ip的訪問量。 即同一頁面,客戶端使用同一個IP訪問多次只計算一次,訪問量不累計。
UV、IP的區(qū)別
并發(fā)量:系統(tǒng)能同時處理的請求數(shù)
RT:響應(yīng)時間,處理一次請求所需要的平均處理時間
計算關(guān)系:
QPS = 并發(fā)量 / 平均響應(yīng)時間
并發(fā)量 = QPS * 平均響應(yīng)時間
下面是來自百度百科解釋,用于加深了解:
1. 響應(yīng)時間(RT)
響應(yīng)時間是指系統(tǒng)對請求作出響應(yīng)的時間。直觀上看,這個指標(biāo)與人對軟件性能的主觀感受是非常一致的,因為它完整地記錄了整個計算機系統(tǒng)處理請求的時間。由于一個系統(tǒng)通常會提供許多功能,而不同功能的處理邏輯也千差萬別,因而不同功能的響應(yīng)時間也不盡相同,甚至同一功能在不同輸入數(shù)據(jù)的情況下響應(yīng)時間也不相同。所以,在討論一個系統(tǒng)的響應(yīng)時間時,人們通常是指該系統(tǒng)所有功能的平均時間或者所有功能的最大響應(yīng)時間。當(dāng)然,往往也需要對每個或每組功能討論其平均響應(yīng)時間和最大響應(yīng)時間。
對于單機的沒有并發(fā)操作的應(yīng)用系統(tǒng)而言,人們普遍認(rèn)為響應(yīng)時間是一個合理且準(zhǔn)確的性能指標(biāo)。需要指出的是,響應(yīng)時間的絕對值并不能直接反映軟件的性能的高低,軟件性能的高低實際上取決于用戶對該響應(yīng)時間的接受程度。對于一個游戲軟件來說,響應(yīng)時間小于100毫秒應(yīng)該是不錯的,響應(yīng)時間在1秒左右可能屬于勉強可以接受,如果響應(yīng)時間達到3秒就完全難以接受了。而對于編譯系統(tǒng)來說,完整編譯一個較大規(guī)模軟件的源代碼可能需要幾十分鐘甚至更長時間,但這些響應(yīng)時間對于用戶來說都是可以接受的。
2. 吞吐量(Throughput)
吞吐量是指系統(tǒng)在單位時間內(nèi)處理請求的數(shù)量。對于無并發(fā)的應(yīng)用系統(tǒng)而言,吞吐量與響應(yīng)時間成嚴(yán)格的反比關(guān)系,實際上此時吞吐量就是響應(yīng)時間的倒數(shù)。前面已經(jīng)說過,對于單用戶的系統(tǒng),響應(yīng)時間(或者系統(tǒng)響應(yīng)時間和應(yīng)用延遲時間)可以很好地度量系統(tǒng)的性能,但對于并發(fā)系統(tǒng),通常需要用吞吐量作為性能指標(biāo)。
對于一個多用戶的系統(tǒng),如果只有一個用戶使用時系統(tǒng)的平均響應(yīng)時間是t,當(dāng)有你n個用戶使用時,每個用戶看到的響應(yīng)時間通常并不是n×t,而往往比n×t小很多(當(dāng)然,在某些特殊情況下也可能比n×t大,甚至大很多)。這是因為處理每個請求需要用到很多資源,由于每個請求的處理過程中有許多不走難以并發(fā)執(zhí)行,這導(dǎo)致在具體的一個時間點,所占資源往往并不多。也就是說在處理單個請求時,在每個時間點都可能有許多資源被閑置,當(dāng)處理多個請求時,如果資源配置合理,每個用戶看到的平均響應(yīng)時間并不隨用戶數(shù)的增加而線性增加。實際上,不同系統(tǒng)的平均響應(yīng)時間隨用戶數(shù)增加而增長的速度也不大相同,這也是采用吞吐量來度量并發(fā)系統(tǒng)的性能的主要原因。一般而言,吞吐量是一個比較通用的指標(biāo),兩個具有不同用戶數(shù)和用戶使用模式的系統(tǒng),如果其最大吞吐量基本一致,則可以判斷兩個系統(tǒng)的處理能力基本一致。
3. 并發(fā)用戶數(shù)
并發(fā)用戶數(shù)是指系統(tǒng)可以同時承載的正常使用系統(tǒng)功能的用戶的數(shù)量。與吞吐量相比,并發(fā)用戶數(shù)是一個更直觀但也更籠統(tǒng)的性能指標(biāo)。實際上,并發(fā)用戶數(shù)是一個非常不準(zhǔn)確的指標(biāo),因為用戶不同的使用模式會導(dǎo)致不同用戶在單位時間發(fā)出不同數(shù)量的請求。一網(wǎng)站系統(tǒng)為例,假設(shè)用戶只有注冊后才能使用,但注冊用戶并不是每時每刻都在使用該網(wǎng)站,因此具體一個時刻只有部分注冊用戶同時在線,在線用戶就在瀏覽網(wǎng)站時會花很多時間閱讀網(wǎng)站上的信息,因而具體一個時刻只有部分在線用戶同時向系統(tǒng)發(fā)出請求。這樣,對于網(wǎng)站系統(tǒng)我們會有三個關(guān)于用戶數(shù)的統(tǒng)計數(shù)字:注冊用戶數(shù)、在線用戶數(shù)和同時發(fā)請求用戶數(shù)。由于注冊用戶可能長時間不登陸網(wǎng)站,使用注冊用戶數(shù)作為性能指標(biāo)會造成很大的誤差。而在線用戶數(shù)和同事發(fā)請求用戶數(shù)都可以作為性能指標(biāo)。相比而言,以在線用戶作為性能指標(biāo)更直觀些,而以同時發(fā)請求用戶數(shù)作為性能指標(biāo)更準(zhǔn)確些。
4. QPS每秒查詢率(Query Per Second)
每秒查詢率QPS是對一個特定的查詢服務(wù)器在規(guī)定時間內(nèi)所處理流量多少的衡量標(biāo)準(zhǔn),在因特網(wǎng)上,作為域名系統(tǒng)服務(wù)器的機器的性能經(jīng)常用每秒查詢率來衡量。對應(yīng)fetches/sec,即每秒的響應(yīng)請求數(shù),也即是最大吞吐能力。 (看來是類似于TPS,只是應(yīng)用于特定場景的吞吐量)