任意一種性能測試,其實現(xiàn)原理包括如下幾點:
1.用戶行為模擬
低成本且具有可行性,
模擬大量用戶操作的一種技術(shù)。
->不同用戶使用不同的數(shù)據(jù)(LoadRunner通過"參數(shù)化"實現(xiàn))
->多用戶并發(fā)操作(LoadRunner通過"集合點"實現(xiàn))
->用戶請求間的依賴關(guān)系(LoadRunner通過"關(guān)聯(lián)"實現(xiàn)) ???
->請求間的延時時間(LoadRunner通過"思考時間"實現(xiàn)) ???
2.性能指標(biāo)監(jiān)控
通過上面的技術(shù)模擬用戶的行為,在
系統(tǒng)運(yùn)行中需要監(jiān)控各項性能指標(biāo),并分析指標(biāo)的正確性
->請求響應(yīng)時間監(jiān)控(LoadRunner通過"事務(wù)"實現(xiàn))
->服務(wù)器處理能力監(jiān)控(LoadRunner通過"事務(wù)"計算吞吐量獲得)
->服務(wù)器資源利用率監(jiān)控(LoadRunner提供全面簡潔的計數(shù)器接口)
3.性能調(diào)優(yōu)
通過
指標(biāo)的監(jiān)控發(fā)現(xiàn)系統(tǒng)存在的性能缺陷,利用分析工具定位并修正性能問題。LoadRunner本身并不提供任何性能調(diào)優(yōu)的功能,但是在其
Analysis組件中提供了常見性能分析的策略及整合報告的功能。
LoadRunner是通過以下流程實現(xiàn)用戶行為模擬的(腳本的錄制和修改是由VuGen完成的,而場景的創(chuàng)建和執(zhí)行是由Controller完成的)??? 什么是場景,下圖:
通過使用VuGen對用戶的行為進(jìn)行錄制,將操作轉(zhuǎn)化為對應(yīng)的腳本,進(jìn)一步將該腳本進(jìn)行修改來完善對用戶行為的模擬。隨后通過Controller設(shè)計一個場景,指定負(fù)載生成的方式,從而執(zhí)行場景,完成最終的用戶負(fù)載行為的模擬。
性能指標(biāo)監(jiān)控是通過以下方式實現(xiàn)的(計數(shù)器的管理由Controller負(fù)責(zé),而測試結(jié)果的總結(jié)統(tǒng)計由Analysis完成),如下圖:
在
場景中可以
遠(yuǎn)程管理被負(fù)載服務(wù)器的相關(guān)計數(shù)器(這里可以先簡單認(rèn)為計數(shù)器就是操作系統(tǒng)自帶的類似于CPU占有率之類的基礎(chǔ)指標(biāo)),當(dāng)
場景運(yùn)行結(jié)束,負(fù)載生成的數(shù)據(jù)和服務(wù)器計數(shù)器數(shù)據(jù)會
被統(tǒng)一保存。最后
調(diào)用Analysis對所有負(fù)載數(shù)據(jù)
進(jìn)行整合分析,最終得出結(jié)論并生成報告。
注:Controller本身無法形成負(fù)載,它只是一個設(shè)計工具,而負(fù)載的生成是通過Load Generator實現(xiàn)的。Controller會將腳本發(fā)送給多個負(fù)載生成器(Load Generator),由負(fù)載生成器根據(jù)預(yù)先的設(shè)置對被測系統(tǒng)形成負(fù)載。
Load Generator就是生成負(fù)載的負(fù)載生成器,通過VuGen錄制生成的用戶腳本,最終都會在Load Generator上運(yùn)行并生成負(fù)載。由于生成的負(fù)載一般數(shù)量比較大,通過一臺電腦進(jìn)行負(fù)載往往力不從心(常見配置一臺Load Generator大概能模擬200-500個虛擬用戶),所以可以通過一臺Controller調(diào)用多臺Load Generator即可模擬成千上萬虛擬用戶對系統(tǒng)的負(fù)載過程。???
在調(diào)用Load Generator時注意不要讓生成負(fù)載成為瓶頸(
寬帶通常是主要瓶頸),導(dǎo)致性能測試結(jié)論的偏差。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。