一窜司、軟件性能的關(guān)注點(diǎn)
1、用戶角度關(guān)注的性能點(diǎn):
用戶操作的響應(yīng)時(shí)間蹲坷。
2驶乾、管理員的角度關(guān)注的性能點(diǎn):
(1)、 響應(yīng)時(shí)間
(2)循签、 服務(wù)器資源使用情況是否合理
(3)级乐、 應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)資源使用是否合理
(4)、 系統(tǒng)能否實(shí)現(xiàn)擴(kuò)展
(5)县匠、 系統(tǒng)最多支持多少用戶訪問(wèn)风科、系統(tǒng)最大業(yè)務(wù)處理量是多少
(6)、 系統(tǒng)性能可能存在的瓶頸在哪里
(7)乞旦、 更換那些設(shè)備可以提高性能
(8)贼穆、 系統(tǒng)能否支持7×24小時(shí)的業(yè)務(wù)訪問(wèn)
3、開(kāi)發(fā)(設(shè)計(jì))人員角度關(guān)注的性能點(diǎn):
(1)杆查、 架構(gòu)設(shè)計(jì)是否合理
(2)扮惦、 數(shù)據(jù)庫(kù)設(shè)計(jì)是否合理
(3)、 代碼是否存在性能方面的問(wèn)題
(4)亲桦、 系統(tǒng)中是否有不合理的內(nèi)存使用方式
(5)崖蜜、 系統(tǒng)中是否存在不合理的線程同步方式
(6)、 系統(tǒng)中是否存在不合理的資源競(jìng)爭(zhēng)
那么站在性能測(cè)試工程師的角度客峭,我們要關(guān)注什么呢豫领?
一句話,我們要關(guān)注以上所有的性能點(diǎn)舔琅。
二等恐、軟件性能的幾個(gè)主要術(shù)語(yǔ)
1、響應(yīng)時(shí)間:對(duì)請(qǐng)求作出響應(yīng)所需要的時(shí)間
網(wǎng)絡(luò)傳輸時(shí)間:N1+N2+N3+N4
應(yīng)用服務(wù)器處理時(shí)間:A1+A3
數(shù)據(jù)庫(kù)服務(wù)器處理時(shí)間:A2
響應(yīng)時(shí)間=N1+N2+N3+N4+A1+A3+A2
2、并發(fā)用戶數(shù)的計(jì)算公式
系統(tǒng)用戶數(shù):系統(tǒng)額定的用戶數(shù)量课蔬,如一個(gè)OA系統(tǒng)囱稽,可能使用該系統(tǒng)的用戶總數(shù)是5000個(gè),那么這個(gè)數(shù)量二跋,就是系統(tǒng)用戶數(shù)战惊。
同時(shí)在線用戶數(shù):在一定的時(shí)間范圍內(nèi),最大的同時(shí)在線用戶數(shù)量扎即。
同時(shí)在線用戶數(shù)=每秒請(qǐng)求數(shù)RPS(吞吐量)+并發(fā)連接數(shù)+平均用戶思考時(shí)間
平均并發(fā)用戶數(shù)的計(jì)算:C=nL / T
其中C是平均的并發(fā)用戶數(shù)吞获,n是平均每天訪問(wèn)用戶數(shù)(login session),L是一天內(nèi)用戶從登錄到退出的平均時(shí)間(login session的平均時(shí)間)谚鄙,T是考察時(shí)間長(zhǎng)度(一天內(nèi)多長(zhǎng)時(shí)間有用戶使用系統(tǒng))
并發(fā)用戶數(shù)峰值計(jì)算:C^約等于C + 3*根號(hào)C
其中C^是并發(fā)用戶峰值各拷,C是平均并發(fā)用戶數(shù),該公式遵循泊松分布理論闷营。
3烤黍、吞吐量的計(jì)算公式
吞吐量指單位時(shí)間內(nèi)系統(tǒng)處理用戶的請(qǐng)求數(shù)。
從業(yè)務(wù)角度看粮坞,吞吐量可以用:請(qǐng)求數(shù)/秒蚊荣、頁(yè)面數(shù)/秒初狰、人數(shù)/天或處理業(yè)務(wù)數(shù)/小時(shí)等單位來(lái)衡量莫杈;從網(wǎng)絡(luò)角度看,吞吐量可以用:字節(jié)/秒來(lái)衡量奢入;對(duì)于交互式應(yīng)用來(lái)說(shuō)筝闹,吞吐量指標(biāo)反映的是服務(wù)器承受的壓力,他能夠說(shuō)明系統(tǒng)的負(fù)載能力腥光。
以不同方式表達(dá)的吞吐量可以說(shuō)明不同層次的問(wèn)題关顷,例如,以字節(jié)數(shù)/秒方式可以表示數(shù)要受網(wǎng)絡(luò)基礎(chǔ)設(shè)施武福、服務(wù)器架構(gòu)议双、應(yīng)用服務(wù)器制約等方面的瓶頸;已請(qǐng)求數(shù)/秒的方式表示主要是受應(yīng)用服務(wù)器和應(yīng)用代碼的制約體現(xiàn)出的瓶頸捉片。
當(dāng)沒(méi)有遇到性能瓶頸的時(shí)候平痰,吞吐量與虛擬用戶數(shù)之間存在一定的聯(lián)系,可以采用以下公式計(jì)算:F=VU * R /伍纫,其中F為吞吐量宗雇,VU表示虛擬用戶個(gè)數(shù),R表示每個(gè)虛擬用戶發(fā)出的請(qǐng)求數(shù)莹规,T表示性能測(cè)試所用的時(shí)間赔蒲。
4、性能計(jì)數(shù)器
是描述服務(wù)器或操作系統(tǒng)性能的一些數(shù)據(jù)指標(biāo),如使用內(nèi)存數(shù)舞虱、進(jìn)程時(shí)間欢际,在性能測(cè)試中發(fā)揮著“監(jiān)控和分析”的作用,尤其是在分析統(tǒng)統(tǒng)可擴(kuò)展性矾兜、進(jìn)行新能瓶頸定位時(shí)有著非常關(guān)鍵的作用幼苛。
資源利用率:指系統(tǒng)各種資源的使用情況,如cpu占用率為68%焕刮,內(nèi)存占用率為55%舶沿,一般使用“資源實(shí)際使用/總的資源可用量”形成資源利用率。
5配并、思考時(shí)間的計(jì)算公式
Think Time括荡,從業(yè)務(wù)角度來(lái)看,這個(gè)時(shí)間指用戶進(jìn)行操作時(shí)每個(gè)請(qǐng)求之間的時(shí)間間隔溉旋,而在做新能測(cè)試時(shí)畸冲,為了模擬這樣的時(shí)間間隔,引入了思考時(shí)間這個(gè)概念观腊,來(lái)更加真實(shí)的模擬用戶的操作邑闲。
在吞吐量這個(gè)公式中F=VU * R / T說(shuō)明吞吐量F是VU數(shù)量、每個(gè)用戶發(fā)出的請(qǐng)求數(shù)R和時(shí)間T的函數(shù)梧油,而其中的R又可以用時(shí)間T和用戶思考時(shí)間TS來(lái)計(jì)算:R = T / TS苫耸。
下面給出一個(gè)計(jì)算思考時(shí)間的一般步驟:
A、首先計(jì)算出系統(tǒng)的并發(fā)用戶數(shù) C=nL / T F=R×C
B儡陨、統(tǒng)計(jì)出系統(tǒng)平均的吞吐量 F=VU * R / T R×C = VU * R / T
C褪子、統(tǒng)計(jì)出平均每個(gè)用戶發(fā)出的請(qǐng)求數(shù)量 R=uCT/VU
D、根據(jù)公式計(jì)算出思考時(shí)間 TS=T/R