【摘要】 本文提出了一種基于性能測試的性能建模技術,該技術在性能測試和調(diào)優(yōu)的基礎上,利用性能測試的結(jié)果,以及回歸分析等數(shù)學理論建立性能模型,通過該模型預測生產(chǎn)系統(tǒng)的性能的性能表現(xiàn)評估、系統(tǒng)宕機風險分析和容量規(guī)劃等方面的應用。
【關鍵詞】 性能建模 性能測試 容量規(guī)劃 TPS
一、性能建模概述
本方法是基于現(xiàn)有測試環(huán)境和生產(chǎn)環(huán)境,以性能測試結(jié)果數(shù)據(jù)和生產(chǎn)環(huán)境信息為輸入,利用科學、合理的性能測試理論和數(shù)學模型,建立的一套綜合算法;利用該算法進行生產(chǎn)環(huán)境的性能表現(xiàn)評估、生產(chǎn)系統(tǒng)性能瓶頸評估和生產(chǎn)系統(tǒng)容量規(guī)劃評估,進而輔助管理人員做出對軟件系統(tǒng)的改進、升級和優(yōu)化的決策。
1.1 單交易資源開銷
通過對性能測試結(jié)果數(shù)據(jù)的分析,計算各交易資源開銷:
(1)對每筆交易最大容量點前的TPS和CPU指標建立一元線性模型
(2)設定
因變量(y):CPU利用率
自變量(x):單業(yè)務的TPS
建立一元線性回歸模型:y=bx+a
對于容量點前的n組數(shù)據(jù)(x1,y1),(x2,y2),…(xn,yn)建立線性方程組:
y
=bx
+a
y
=bx
+a
…
y=bx
+a
利用最小二乘法得到線性方程組:
其中b為單交易資源開銷。
輸入:單筆業(yè)務TPS和CPU利用率
輸出:單業(yè)務每筆交易CPU開銷
1.2 綜合交易資源開銷
過程如下:
(1)通過下表的數(shù)據(jù)計算得到綜合業(yè)務下每筆交易資源開銷的計算值:
CPU綜合每筆交易開銷計算值=xq
(2)執(zhí)行綜合交易業(yè)務測試得到CPU綜合每筆交易開銷測試值;
(3)計算綜合交易測試值與計算值的擬合因子:
ρ=
(4)用單交易資源開銷乘以ρ可得出綜合場景各業(yè)務每筆交易CPU開銷。
輸入:單交易資源開銷、綜合業(yè)務測試TPS和CPU利用率;輸出:綜合場景各業(yè)務每筆交易CPU開銷
1.3 測試環(huán)境推導生產(chǎn)環(huán)境
根據(jù)生產(chǎn)系統(tǒng)業(yè)務數(shù)據(jù)和性能數(shù)據(jù),計算每筆交易資源開銷,通過計算二者之間的差異系數(shù),將測試得到的各業(yè)務資源開銷推導到生產(chǎn)環(huán)境中:
γ=
然后擬合不同TPS下測試環(huán)境和生產(chǎn)環(huán)境CPU開銷,得到測試環(huán)境到生產(chǎn)環(huán)境的差異系數(shù)。
輸入:測試環(huán)境硬件配置、生產(chǎn)環(huán)境硬件配置、生產(chǎn)環(huán)境數(shù)據(jù);輸出:生產(chǎn)環(huán)境每筆交易資源開銷
二、性能模型應用
2.1 生產(chǎn)系統(tǒng)性能預測
生產(chǎn)系統(tǒng)性能進行預測:(1)生產(chǎn)系統(tǒng)可支撐的最大TPS:根據(jù)系統(tǒng)的硬件配置,以及單位處理能力所消耗的資源消耗,可得出在硬件不超過閥值線時可以支撐的最大TPS;(2)預測系統(tǒng)的性能表現(xiàn):可得到系統(tǒng)的處理能力TPS與資源的變化曲線,以及該硬件條件下,還可支撐多少TPS,存在多少冗余。(3)業(yè)務突變情況下預測系統(tǒng)的性能表現(xiàn):因市場部門會不間斷的進行業(yè)務的促銷,導致某些業(yè)務的辦理量會不定期的增長,在這樣的情況下,我們可預測在不同的業(yè)務模型,系統(tǒng)的性能表現(xiàn)。
2.2 生產(chǎn)系統(tǒng)宕機風險預測
預測內(nèi)容包括:(1)預測生產(chǎn)系統(tǒng)的性能瓶頸:根據(jù)木桶原則,可評估服務器的資源消耗最多從而成為系統(tǒng)的性能瓶頸;可根據(jù)性能優(yōu)化或調(diào)整硬件配置等措施解決系統(tǒng)潛在的性能瓶頸等問題。(2)生產(chǎn)系統(tǒng)宕機風險預測:可預測在宕機某臺服務器后,對系統(tǒng)整體處理能力的影響。
2.3 生產(chǎn)系統(tǒng)容量規(guī)劃
利用性能建模技術可以實現(xiàn)對系統(tǒng)容量進行評估,有效支撐系統(tǒng)的容量規(guī)劃。首先獲取業(yè)務量的歷史值,預測業(yè)務量的發(fā)展趨勢;其次,根據(jù)單位處理能力所消耗的資源開銷,評估在CPU不超過閥值的情況下,應該如何分配各類服務器的硬件資源。
三、結(jié)束語
性能建模技術是在性能測試的基礎上,進行性能建模,通過模型預測系統(tǒng)的性能表現(xiàn)和宕機風險,其中最重要的是對系統(tǒng)的容量規(guī)劃進行量化評估,對系統(tǒng)資源配置提供合理建議,減少額外的硬件投入風險。
參 考 文 獻
[1] 馬琳,羅鐵堅,宋進亮,葉世偉. Web 性能測試與預測[J]. 中國科學院研究生院學報,2005,22(4):472-479
[2] 柳純錄,黃子河,陳淥萍. 軟件評測師教程[M]. 北京:清華大學出版社,2005.3
[3] 段念,軟件性能測試過程詳解與案例剖析[M]. 北京:清華大學出版社,2012