計算並發用戶數/tps/響應時間的方法


一、並發用戶數計算方法

1.經典公式1:

   一般來說,利用以下經驗公式進行估算系統的平均並發用戶數和峰值數據

 

  1)平均並發用戶數為 C = nL/T

  2)並發用戶數峰值 C‘ = C + 3*根號C

    C是平均並發用戶數,n是login session的數量,L是login session的平均長度,T是值考察的時間長度

    C’是並發用戶數峰值

 

  舉例1,假設系統A,該系統有3000個用戶,平均每天大概有400個用戶要訪問該系統(可以從系統日志從獲得),對於一個典型用戶來說,一天之內用戶從登陸到退出的平均時間為4小時,而在一天之內,用戶只有在8小時之內會使用該系統。

  那么,

  平均並發用戶數為:C = 400*4/8 = 200

  並發用戶數峰值為:C‘ = 200 + 3*根號200 = 243

 

  舉例2, 某公司為其170000名員工設計了一個薪酬系統,員工可進入該系統查詢自己的薪酬信息,但並不是每個人都會用這個系統,假設只有50%的人會定期用該系統,這些人里面有70%是在每個月的最后一周使用一次該系統,且平均使用系統時間為5分鍾。

  則一個月最后一周的平均並發用戶數為(朝九晚五):

  n = 170000*0.5*0.7/5 = 11900

  C= 11900*5/60/8 = 124

 

  吞吐量計算為:F = Vu * R / T 單位為個/s

    F為事務吞吐量,Vu為虛擬用戶數個數,R為每個虛擬用戶發出的請求數,T為處理這些請求所花費的時間

 

2.通用公式2:

  對絕大多數場景,我們用(用戶總量/統計時間)*影響因子(一般為3)來進行估算並發量。

  比如,以乘坐地鐵為例子,每天乘坐人數為5萬人次,每天早高峰是7到9點,晚高峰是6到7點,根據8/2原則,80%的乘客會在高峰期間乘坐地鐵,則每秒到達地鐵檢票口的人數為50000*80%/(3*60*60)=3.7,約4人/S,考慮到安檢,入口關閉等因素,實際堆積在檢票口的人數肯定比這個要大,假定每個人需要3秒才能進站,那實際並發應為4人/s*3s=12,當然影響因子可以根據實際情況增大!

 

3.根據PV計算公式:

  比如一個網站,每天的PV大概1000w,根據2/8原則,我們可以認為這1000w pv的80%是在一天的9個小時內完成的(人的精力有限),那么TPS為:

  1000w*80%/(9*3600)=246.92個/s,取經驗因子3,則並發量應為:

  246.92*3=740

 

4.根據TPS估計:

   公式為 C = (Think time + 1)*TPS

 

5.根據系統用戶數計算:

   並發用戶數 = 系統最大在線用戶數的8%到12%

二、Tps計算方法

二八原則:指80%的業務量在20%的時間里完成。

例:如某個公司1000個員工,在周五下午3點-5點有90%的員工登陸公司周報系統

則:業務量=1000個,時間=2x60x60=7200秒

根據二八原則來計算3點到5點的TPS=(90%*業務量*80%)/(20%*時間)=0.9*1000*0.8/(0.2*7200)=0.5個/s

注:二八原則計算的結果並非在線並發用戶數,是系統要達到的處理能力(吞吐量)

三、響應時間計算方法

每個事務處理時間:2/5/8原則

接口處理時間:3s以內

報錯率:2%以內
————————————————
版權聲明:本文為CSDN博主「痞子銳」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/dingyang0315/java/article/details/81504415


免責聲明!

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



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