性能測試指標:TPS,吞吐量,並發數,響應時間


性能測試指標:TPS,吞吐量,並發數,響應時間

常用的網站性能測試指標有:TPS、吞吐量、並發數、響應時間、性能計數器等。

並發數
並發數是指系統同時能處理的請求數量,這個也是反應了系統的負載能力。

響應時間
響應時間是一個系統最重要的指標之一,它的數值大小直接反應了系統的快慢。響應時間是指執行一個請求從開始到最后收到響應數據所花費的總體時間。

吞吐量
吞吐量是指單位時間內系統能處理的請求數量,體現系統處理請求的能力,這是目前最常用的性能測試指標。

QPS(每秒查詢數)、TPS(每秒事務數)是吞吐量的常用量化指標,另外還有HPS(每秒HTTP請求數)。

跟吞吐量有關的幾個重要是:並發數、響應時間。

QPS(TPS),並發數、響應時間它們三者之間的關系是:

QPS(TPS)= 並發數/平均響應時間

性能計數器
性能計數器是描述服務器或操作系統性能的一些數據指標,如使用內存數、進程時間,在性能測試中發揮着“監控和分析”的作用,尤其是在分析統統可擴展性、進行新能瓶頸定位時有着非常關鍵的作用。

Linux中可以使用 top 或者 uptime 命令看到當前系統的負載及資源利用率情況。

資源利用率:指系統各種資源的使用情況,如cpu占用率為68%,內存占用率為55%,一般使用“資源實際使用/總的資源可用量”形成資源利用率。

$ top
top - 15:47:21 up 4 days, 19:57,  7 users,  load average: 0.00, 0.00, 0.00
Tasks: 109 total,   1 running, 108 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.5%us,  0.5%sy,  0.0%ni, 98.8%id,  0.0%wa,  0.0%hi,  0.2%si,  0.0%st
Mem:   1922368k total,  1845156k used,    77212k free,   163552k buffers
Swap:  4128760k total,    22284k used,  4106476k free,   637292k cached

所以,一個網站優化的目的即是,最大限度的利用好服務器硬件資源提升資源利用率,減少用戶請求的響應時間,提高系統吞吐量,提高系統並發數。

 

吞吐量與並發數的關系

吞吐量:一段時間內應用系統處理用戶的請求數(以下介紹指單位時間內,也可以理解為吞吐率),這個定義考察點一般是系統本身因素;當然也可以用單位時間內流經被測系統的數據流量,一般單位為b/s,即每秒鍾流經的字節數,這個定義的考察點既有系統本身因素也有網絡,外設等因素,也可以理解為除客戶端以外的測試環境及被測系統。

並發用戶數:指同一時間點對業務功能同時操作的用戶數,可以分為兩種:一種是嚴格意義上的並發,即所有的用戶在同一時刻做同一件事或操作,這時業務功能一般指同一類型的業務;另外一種並發是廣義范圍的並發,這種並發與前一種並發的區別是,盡管多個用戶對系統發出了請求或者進行了操作,但是這些請求或都操作可以是相同的,也可以是不同的,這時業務功能可能不是同一類型的業務。

再看看兩則有沒有關聯,上網查了下資料有些資料說有關系,有些說沒有直接關系,下面說說我的看法: 並發數 >= 吞吐量

一般來說,在系統的設計范圍之內,吞吐量隨系統的並發用戶數的增加呈現增加趨勢,也就是說你客戶端來多少請求數系統吃(處理)多少請求數;當超出這個范圍時有兩種情況,一種是系統只能處理這么多,超過這個數系統不接收了,最后隨着並發用戶數的增多吞吐量是一個水平的直線;

還有一種情況是不管來多少系統都接收最后導致系統吞吐量下降甚至系統崩潰並發用戶數是客戶端單位時間內對服務器端施加的壓力,具體能不能接受並處理要看被測系統的吞吐量而吞吐量是被測系統單位時間內處理的請求數或者說單位時間內處理的字節數;一個着重於客戶端的操作即測試手段,一個着重於應用系統的處理能力即查看對象;(上面的討論沒有考慮兩者的單位,如一個用戶同時有多個請求情況)

最后順便把兩者的計算公式注明下:

平均並發用戶數的計算:C=nL / T

其中C是平均的並發用戶數,n是平均每天訪問用戶數,L是一天內用戶從登錄到退出的平均時間(操作平均時間),T是考察時間長度(一天內多長時間有用戶使用系統)

並發用戶數峰值計算: C^約等於C + 3*根號C 其中C^是並發用戶峰值,C是平均並發用戶數,該公式遵循泊松分布理論。(該公式針對一般被測系統,特殊不做討論)

吞吐量計算:當沒有遇到性能瓶頸的時候,吞吐量與虛擬用戶數之間存在一定的聯系,可以采用以下公式計算:F=VU * R / T其中F為吞吐量,VU表示虛擬用戶個數,R表示每個虛擬用戶發出的請求數,T表示性能測試所用的時間,其實通過這個公式就能看出吞吐量與並發用戶數之間的關系了(這里的VU就是我們用工具模擬的並發用戶數)。

 

並發數、QPS、平均響應時間三者之間關系

 

 

原文地址http://www.sohu.com/a/256477206_100224606

原文地址https://blog.csdn.net/youanyyou/article/details/78990209

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM