併發數的計算

2021-06-18 08:21:48 字數 2054 閱讀 2883

根據我們對業務併發使用者數的定義,這500就是整個系統使用時最大的業務併發使用者數。當然,500這個數值只是表明在最高峰時刻有500個使用者登入了系統,並不表示實際伺服器承受的壓力。因為伺服器承受的壓力還與具體的使用者訪問模式相關。例如,在這500個「同時使用系統」的使用者中,考察某乙個時間點,在這個時間上,假設其中40%的使用者在較有興致地看系統公告(注意:「看」這個動作是不會對服務端產生任何負擔的),20%的使用者在填寫複雜的**(對使用者填寫的**來說,只有在「提交」的時刻才會向服務端傳送請求,填寫過程是不對服務端構成壓力的),20%部分使用者在發呆(也就是什麼也沒有做),剩下的20%使用者在不停地從乙個頁面跳轉到另乙個頁面——在這種場景下,可以說,只有20%的使用者真正對伺服器構成了壓力。因此,從上面的例子中可以看出,伺服器實際承受的壓力不只取決於業務併發使用者數,還取決於使用者的業務場景。

在實際的效能測試工作中,測試人員一般比較關心的是業務併發使用者數,也就是從業務角度關注究竟應該設定多少個併發數比較合理,因此,在後面的討論中,也是主要針對業務併發使用者數進行討論,而且,為了方便,直接將業務併發使用者數稱為併發使用者數。

(1) 計算平均的併發使用者數: c = nl/t

(2) 併發使用者數峰值: c』 ≈ c+3根號c

公式(1)中,c是平均的併發使用者數;n是login session的數量;l是login session的平均長度;t指考察的時間段長度。

公式(2)則給出了併發使用者數峰值的計算方式中,其中,c』指併發使用者數的峰值,c就是公式(1)中得到的平均的併發使用者數。該公式的得出是假設使用者的login session產生符合泊松分布而估算得到的。

例項:假設有乙個oa系統,該系統有3000個使用者,平均每天大約有400個使用者要訪問該系統,對乙個典型使用者來說,一天之內使用者從登入到退出該系統的平均時間為4小時,在一天的時間內,使用者只在8小時內使用該系統。

則根據公式(1)和公式(2),可以得到:

c = 400*4/8 = 200

c』≈200+3*根號200 = 242

f=vu * r / t

其中f為吞吐量,vu表示虛擬使用者個數,r表示每個虛擬使用者發出的請求數,t表示效能測試所用的時間

r = t / ts

ts為使用者思考時間

計算思考時間的一般步驟:

a、 首先計算出系統的併發使用者數

c=nl / t

f=r×c

b、 統計出系統平均的吞吐量

f=vu * r / t r×c = vu * r / t

c、 統計出平均每個使用者發出的請求數量

r=u*c*t/vu

d、根據公式計算出思考時間

ts=t/r

缺陷檢測有效性百分比dde=tdft/(tdfc+tdft)×100%

其中:tdft=測試過程中發現的全部缺陷(即由測試組發現的),tdfc=客戶發現的全部缺陷(在版本交付後乙個標準點開始測量,如,半年以後)

缺陷排除有效性百分比dre=(tdct/tdft)×100%

其中:tdct=測試中改正的全部缺陷,tdft=測試過程中發現的全部缺陷

測試用例設計效率百分比tde=(tdft/ntc)×100%

其中:tdft=測試過程中發現的全部缺陷,ntc=執行的測試用例數

以下公式較適用於白盒測試

功能覆蓋率= 至少被執行一次的測試功能點數/ 測試功能點總數 (功能點)

需求覆蓋率= 被驗證到的需求數量 /總的需求數量 (需求)

覆蓋率= 至少被執行一次的測試用例數/ 應執行的測試用例總數 (測試用例)

語句覆蓋率= 至少被執行一次的語句數量/ 有效的程式**行數

判定覆蓋率= 判定結果被評價的次數 / 判定結果總數

條件覆蓋率= 條件運算元值至少被評價一次的數量 / 條件運算元值的總數

判定條件覆蓋率= 條件運算元值或判定結果至少被評價一次的數量/(條件運算元值總數+判定結果總數)

上下文判定覆蓋率= 上下文內已執行的判定分支數和/(上下文數*上下文內的判定分支總數)

基於狀態的上下文入口覆蓋率= 累加每個狀態內執行到的方法數/(狀態數*類內方法總數)

分支條件組合覆蓋率= 被評測到的分支條件組合數/分支條件組合數

路徑覆蓋率= 至少被執行一次的路徑數/程式總路徑數

4 使用者併發數的計算

什麼是併發?如何來描述併發使用者數,用 tps 來承載 併發 這個概念就可以了。併發數是 16tps,就是 1 秒內整個系統處理了 16 個事務。這樣描述就夠了,別糾結。併發使用者數 併發度 通過這個圖,我們可以看到乙個簡單的計算邏輯 如果每個執行緒的 20tps,顯然只需要 5 個執行緒就夠了 請...

如何計算系統使用者併發數,系統最大併發數

根據我們對業務併發使用者數的定義,這500就是整個系統使用時最大的業務併發使用者數。當然,500這個數值只是表明在最高峰時刻有500個使用者登入了系統,並不表示實際伺服器承受的壓力。因為伺服器承受的壓力還與具體的使用者訪問模式相關。例如,在這500個 同時使用系統 的使用者中,考察某乙個時間點,在這...

ZT linux伺服器每秒併發處理數的計算方法

sudone.com 伺服器系統架構分析日誌 linux伺服器每秒併發處理數的計算方法 2010 04 13 11 10 14 1 利用網路處理量計算。併發 connection established min server keepalive,server timeout 翻譯一下 併發 伺服器傳...