1. 程式人生 > 其它 >Jmeter系列(29)- 效能指標(2) | 併發數

Jmeter系列(29)- 效能指標(2) | 併發數

併發數

概念

同時承載正常使用系統功能的使用者數量;系統能夠同時處理請求的數目。

通過問題詳解

  • 問題:網站的併發數,究竟指的同時提交請求的使用者數目,還是使用者同時提交的請求的數目?
  • 答案:根據這句描述“對網站而言,併發數即網站併發使用者數,指同時提交請求的使用者數目。”,併發數指同時提交請求的使用者資料,可以知道併發數指的是使用者數目,那麼這個使用者數目和請求資料是什麼關係呢?
  •    因為一個使用者在同一時刻,也就只能提交一個請求,所以,併發的使用者數目,也就是併發的請求數目。

併發數計算

根據業務場景不同,需求對併發的要求不同,選擇相應的併發數計算公式

---------------------------------------------------------------------------------------------------------------------------------------

經典公式

  • 平均併發使用者數: C = nL/T
  •  #C是平均併發使用者數,
  •   #n是login session的數量(平均每天多少個使用者)
  •   #L是login session的平均長度(一天之內使用者從登入到退出該系統的平均時間)
  •   #T是值考察的時間長度(在一天的時間內,使用者只在多少個小時內使用該系統)
  • 併發使用者數峰值: C‘ = C + 3*根號C
  • #C’是併發使用者數峰值
例子 系統A,該系統有3000個使用者,平均每天大概有400個使用者要訪問該系統(可以從系統日誌從獲得),對於一個典型使用者來說,一天之內使用者從登陸到退出的平均時間為4小時,而在一天之內,使用者只有在8小時之內會使用該系統。 那麼, 平均併發使用者數為:C = 400*4/8 = 200 併發使用者數峰值為:C‘ = 200 + 3*根號200 = 243 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

通用公式

  • 對絕大多數場景,我們用:
  • 併發量=(使用者總量/統計時間)*影響因子(一般為3)來進行估算。
  •  #使用者總量和統計時間使用2/8原則計算,即80%的使用者集中在20%的時間
  •  #影響因子,一般為3,根據實際情況來
  •  #通用公式使用了二八原則,計算的併發量即是峰值併發量。
例子 以乘坐地鐵為例子,每天乘坐人數為5萬人次,每天早高峰是7到9點,晚高峰是6到7點,根據2/8原則,80%的乘客會在高峰期間乘坐地鐵,則每秒到達地鐵檢票口的人數為50000*80%/(3*60*60)=3.7,約4人/S,考慮到安檢,入口關閉等因素,實際堆積在檢票口的人數肯定比這個要大,假定每個人需要3秒才能進站,那實際併發應為4人/s*3s=12,當然影響因子可以根據實際情況增大! ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

根據PV計算

  • 併發量=(日PV/統計時間)*影響因子(一般為3)
  •  #日PV和統計時間使用2/8原則計算,即80%的使用者集中在20%的時間
  •  #影響因子,一般為3,根據實際情況來
  •  #PV公式使用了二八原則,計算的併發量即是峰值併發量。

例子

比如一個網站,每天的PV大概1000w,根據2/8原則,我們可以認為這1000w,pv的80%是在一天的9個小時內完成的(人的精力有限),那麼TPS為:1000w*80%/(9*60*60)=246.92個/s,取經驗因子3,則併發量應為:246.92*3=740 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

根據TPS計算

  • 併發量=(Think time + 1)*TPS
  •  #Think time使用者在操作過程中的等待時間;即一個事務完成的時間
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

根據系統使用者數計算

  • 併發使用者數 = 系統最大線上使用者數的8%到12%