公式法
適用方法:web類訪問(wèn)
公式(1):計(jì)算平均并發(fā)用戶數(shù):C=n*L/T
C:是平均的并發(fā)用戶數(shù)疹蛉;
n:login session的數(shù)量每币;
L:login session的平均長(zhǎng)度;
T:指考察的時(shí)間段長(zhǎng)度瘩扼;
公式(2)計(jì)算并發(fā)用戶數(shù)峰值:C’≈ C+3根號(hào)C
C’:指并發(fā)用戶數(shù)的峰值
C:平均用戶并發(fā)數(shù)
該公式得出的假設(shè)是用戶的login session產(chǎn)生符合泊松分布而估算得到的。
舉例
例1: 假設(shè)有一個(gè)OA系統(tǒng)垃僚,該系統(tǒng)有3000個(gè)用戶集绰,平均每天大約有400個(gè)用戶要訪問(wèn)該系統(tǒng),對(duì)一個(gè)典型用戶來(lái)說(shuō)谆棺,一天之內(nèi)用戶從登錄到退出該系統(tǒng)的平均時(shí)間為4小時(shí)栽燕,在一天的時(shí)間內(nèi),用戶只在8小時(shí)內(nèi)使用該系統(tǒng)改淑。
C = 400 * 4 / 8 = 200
C’≈ 200 + 3 * 根號(hào)200 = 242
為了更好地理解上述公式碍岔,將其轉(zhuǎn)換為如下公式:
公式(3)并發(fā)用戶數(shù) = 吞吐率 * 場(chǎng)景業(yè)務(wù)時(shí)間 / 單位時(shí)間段
例2 :一個(gè)OA系統(tǒng),1小時(shí)內(nèi)有8000用戶登錄系統(tǒng)朵夏。用戶每次登錄系統(tǒng)蔼啦,需啟動(dòng)登錄頁(yè)面,然后輸入用戶名和密碼仰猖,進(jìn)入首頁(yè)捏肢。一般情況下掠河,用戶在上述操作過(guò)程中需耗時(shí)5秒,且要求從點(diǎn)擊登錄按鈕到首頁(yè)完全展現(xiàn)猛计,需控制在5秒內(nèi)唠摹。
分析:
吞吐率 = 8000 * 2(整個(gè)業(yè)務(wù)操作需加載2次頁(yè)面才能完成)
場(chǎng)景業(yè)務(wù)時(shí)間 = 5 + 5 = 10 秒
單位時(shí)間段 = 1小時(shí) = 3600 秒
并發(fā)用戶數(shù)(登錄場(chǎng)景) = (8000 * 2)* 10 / 3600 = 45
通過(guò)以上方法得到業(yè)務(wù)并發(fā)數(shù)后,我們可以進(jìn)一步分析業(yè)務(wù)訪問(wèn)了哪些接口奉瘤,我們只要模擬這些接口調(diào)用方式和調(diào)用時(shí)序就行了勾拉。
有時(shí)我們需要計(jì)算某一個(gè)或某一類接口的并發(fā)數(shù),我們可以按如下步驟進(jìn)行分析計(jì)算:
(1) 梳理出被測(cè)接口被訪問(wèn)的業(yè)務(wù)場(chǎng)景和每個(gè)業(yè)務(wù)場(chǎng)景訪問(wèn)的次數(shù)
(2) 通過(guò)上述方法計(jì)算出業(yè)務(wù)場(chǎng)景的并發(fā)用戶數(shù)
接口并發(fā)數(shù) = 場(chǎng)景1 并發(fā)用戶數(shù) * 業(yè)務(wù)場(chǎng)景接口調(diào)用次數(shù)1 + 場(chǎng)景2并發(fā)用戶數(shù) * 接口調(diào)用次數(shù)2 + …