摘要:當(dāng)并發(fā)性增加時,需要測量吞吐量是否下降,響應(yīng)時間是否變長可擴展性可擴展性不是壓力測試的指標(biāo),可擴展性指標(biāo)對于容量規(guī)范非常有用,它可以提供其他測試無法提供的信息,來幫助發(fā)現(xiàn)應(yīng)用的瓶頸歸根結(jié)底,應(yīng)該測試那些對用戶來說最重要的指標(biāo)。
簡單來說,基準(zhǔn)測試是則很難對系統(tǒng)設(shè)計的一種壓力測試,通常的目標(biāo)是為了掌握系統(tǒng)的行為。但也有其他原因。比如重現(xiàn)某個系統(tǒng)狀態(tài),或者是做新硬件的可靠性測試。
因為基準(zhǔn)測試是唯一有效方便的,可以學(xué)習(xí)系統(tǒng)在給定的工作負(fù)載下會發(fā)生什么的方法。系統(tǒng)測試可以觀察在不同壓力下的行為,評估系統(tǒng)的容量,掌握哪些是重要的變化,或者觀察系統(tǒng)如何處理不同的數(shù)據(jù)。
基準(zhǔn)測試可以完成的工作:
基準(zhǔn)測試的一個主要問題在于其不是真實壓力的測試?;鶞?zhǔn)測試施加給系統(tǒng)的壓力相對真實壓力來說,通常會比較簡單,因為真實壓力是不可預(yù)期而且變化多端的,有時候情況會過于復(fù)雜而難以解釋。
那么基準(zhǔn)測試和真實壓力不同在什么地方?
結(jié)論就是,我們只能進行大概的測試,來確定系統(tǒng)大致的余量有多少。當(dāng)然也可以做一些真實的壓力測試,但在構(gòu)造數(shù)據(jù)集和壓力要特別小心,而且這樣就不再是基準(zhǔn)測試了?;鶞?zhǔn)測試要簡單直接,結(jié)果之間相互容易比較
兩種主要策略:
針對測試整個系統(tǒng)做集成式測試而不是多帶帶測試的原因有以下幾點:
但是集成式測試很難建立,如果基準(zhǔn)測試的設(shè)計有問題,那么結(jié)果就無法反映真實的情況,決策也可能是錯的。
所以有的時候不需要了解整個應(yīng)用的情況,而只需要關(guān)注MySQL的性能,至少在項目初期可以這樣做,以下情況,可以選擇只測試MySQL:
另外,如果能夠在真實的數(shù)據(jù)集上執(zhí)行重復(fù)的查詢,那么也是有用的,如果可能,可以采用生產(chǎn)環(huán)境的數(shù)據(jù)快照。不幸的是,設(shè)置一個基于真實數(shù)據(jù)的基準(zhǔn)測試復(fù)雜而且耗時,而且開發(fā)一個新應(yīng)用,只有很少的數(shù)據(jù)量,如果想要測試規(guī)模擴張后的性能表現(xiàn),只能通過模擬大量的數(shù)據(jù)和壓力進行
不同的指標(biāo)需要用不同的方法測試
以下指標(biāo):
歸根結(jié)底,應(yīng)該測試那些對用戶來說最重要的指標(biāo)。因此應(yīng)該盡可能地去收集一些需求,然后基于這些需求去設(shè)計基準(zhǔn)測試
以下是測試的常見錯誤
設(shè)計和規(guī)劃基準(zhǔn)測試
標(biāo)準(zhǔn)的基準(zhǔn)測試,應(yīng)該確認(rèn)選擇了合適的測試方案
設(shè)計專用的基準(zhǔn)測試是很復(fù)雜的,往往需要一個迭代的過程。首先需要獲得生產(chǎn)數(shù)據(jù)集的快照(很容易還原),然后,針對數(shù)據(jù)運行查詢(選擇一個有代表性的時間段,如果時間段選擇比較小,則可以選擇多個時間段,這樣有助于覆蓋整個系統(tǒng)的活動狀態(tài))
3.可以在不同級別記錄查詢
4.即使不需要創(chuàng)建專用的基準(zhǔn)測試,也要寫下測試規(guī)劃(測試數(shù)據(jù),系統(tǒng)配置步驟,如何測量和分析結(jié)果,以及預(yù)熱的方案)
5.寫一些腳本分析測試結(jié)果
基準(zhǔn)測試應(yīng)該運行足夠長的時間,這一點非常重要,應(yīng)當(dāng)在穩(wěn)定狀態(tài)下測試并觀察
一個常見的錯誤測試方式是,只執(zhí)行一系列短期的測試。這種不花費足夠時間去完成準(zhǔn)確完成的基準(zhǔn)測試,那么已經(jīng)花費的所有時間都是一種浪費,所以有時候要相信別人的測試結(jié)果,并使用
可以編寫一個shell腳本來記錄測試結(jié)果,配置文件,測試指標(biāo),腳本和其他相關(guān)說明都保存在其中
首先,獲得準(zhǔn)確測試結(jié)果的最好辦法,是回答一些關(guān)于基準(zhǔn)測試的基本問題:
然后,確認(rèn)測試結(jié)果是否可重復(fù),每次測試之前都要確保系統(tǒng)的狀態(tài)一致
如果測試過程會修改數(shù)據(jù)或者schema,那么每次測試前,需要利用快照還原數(shù)據(jù)
每次測試時修改的數(shù)據(jù)應(yīng)該盡可能地小,一般情況下都是通過迭代的方式
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/119610.html
閱讀 1396·2021-11-24 09:38
閱讀 3324·2021-11-22 12:03
閱讀 4348·2021-11-11 10:59
閱讀 2422·2021-09-28 09:36
閱讀 1101·2021-09-09 09:32
閱讀 3553·2021-08-05 10:00
閱讀 2616·2021-07-23 15:30
閱讀 3050·2019-08-30 13:12