性能測試場景

提到性能測試,常會提到壓力測試、負(fù)載測試、穩(wěn)定性測試、配置測試等等,但說到其各自的定義,實在是晦澀難懂。但若將性能測試,看作是在不同的場景下執(zhí)行系統(tǒng),獲取系統(tǒng)的性能指標(biāo),再對數(shù)據(jù)進(jìn)行監(jiān)控分析的過程,就比較好理解了。
性能測試場景可以分為四類。

  • 基準(zhǔn)性能場景
  • 容量性能場景
  • 穩(wěn)定性性能場景
  • 異常性能場景
    下面說下每種場景的定義、場景設(shè)計以及一些補(bǔ)充。

基準(zhǔn)性能場景

對單個業(yè)務(wù)進(jìn)行加壓,以獲取其的最大容量

設(shè)計步驟

  1. 確定要測試的業(yè)務(wù)比例、業(yè)務(wù)目標(biāo)TPS、響應(yīng)時間指標(biāo)
    這里要測試兩個接口,目標(biāo)響應(yīng)時間都是100ms
業(yè)務(wù)名 業(yè)務(wù)比例 業(yè)務(wù)目標(biāo)TPS
業(yè)務(wù)A 70% 160
業(yè)務(wù)B 30% 100
  1. 對業(yè)務(wù)接口進(jìn)行梯度加壓,得到測試結(jié)果
    以每3秒一個用戶的速度向上遞增,直到加到50個用戶
    TPS


    A-TPS.png

RT


A-RT.png

線程


A-T.png
  1. 獲取最大TPS,以及此時的響應(yīng)時間

從上面的圖可以得到以下判斷:

  • 壓力線程到14時,TPS達(dá)到上限180左右
  • 此時的響應(yīng)時間是75左右

4.重復(fù)以上步驟測試每一個業(yè)務(wù),得到結(jié)果表格

業(yè)務(wù) 最大TPS RT
業(yè)務(wù)A 180 75
業(yè)務(wù)B 155 70

Q&A

Q:業(yè)務(wù)目標(biāo)TPS和響應(yīng)時間怎么定?
A:方法一:找同行業(yè)對比數(shù)據(jù)。方法二:到生產(chǎn)環(huán)境看用戶使用情況并統(tǒng)計信息

Q:怎么得到業(yè)務(wù)比例?
A:根據(jù)生產(chǎn)環(huán)境的請求統(tǒng)計信息

Q:測試時為什么要逐步增壓?
A:保證在測試過程中資源分配的合理性,可以看到整體的變化過程,例如遞增過程中會不會出現(xiàn)系統(tǒng)動蕩,便于分析性能瓶頸。

容量性能場景

模擬生產(chǎn)環(huán)境的業(yè)務(wù)場景,比如峰值場景進(jìn)行的測試,判斷在混合業(yè)務(wù)場景下,系統(tǒng)的指標(biāo)是否符合預(yù)期

設(shè)計步驟

  1. 場景不斷
  2. 控制比例
    業(yè)務(wù)A、B按照7:3的比例,不斷增加壓力,得到以下結(jié)果:


    混合容量.png
業(yè)務(wù) 最大TPS 響應(yīng)時間 業(yè)務(wù)比例 目標(biāo)TPS 容量測試結(jié)果TPS 容量測試結(jié)果對應(yīng)的響應(yīng)時間
業(yè)務(wù)A 180 75 70% 160 115 116
業(yè)務(wù)B 155 70 30% 100 53 107
合計 168

混合場景下,業(yè)務(wù)的TPS并沒有達(dá)到預(yù)期,此處應(yīng)進(jìn)行分析調(diào)優(yōu)。

穩(wěn)定性性能場景

系統(tǒng)能在一定時間內(nèi)穩(wěn)定運(yùn)行

設(shè)計步驟

確定場景的運(yùn)行時間長度的加壓數(shù)
運(yùn)行時長取決于系統(tǒng)上線后的運(yùn)維周期。例如指標(biāo)是穩(wěn)定運(yùn)行一周,支持100萬業(yè)務(wù)量。之前容量TPS能達(dá)到168,所以時長應(yīng)該是10000000/168=6250秒=1.8小時。

Q&A

Q:為什么用最大容量TPS跑穩(wěn)定性?
A:有的觀點是用最大TPS的80%去跑穩(wěn)定性。跑穩(wěn)定性的目的就是看系統(tǒng)會不會因為長時間處理業(yè)務(wù)而引發(fā)潛在瓶頸。只要系統(tǒng)正常處理,資源沒有出問題也沒有報錯,就可以用最大TPS去跑。

異常性能場景

根據(jù)系統(tǒng)架構(gòu)模擬異常情況,如宕主機(jī)、宕數(shù)據(jù)庫等等,看系統(tǒng)性能下降是否符合預(yù)期并且能否在一定時間內(nèi)恢復(fù)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容