版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1測(cè)試目的此處闡述本次性能測(cè)試的目的,包括必要性分析與擴(kuò)展性描述。性能測(cè)試最主要的目的是檢驗(yàn)當(dāng)前系統(tǒng)所處的性能水平,驗(yàn)證其性能是否能滿足未來(lái)應(yīng)用的需求,并進(jìn)一步找出系統(tǒng)設(shè)計(jì)上的瓶頸,以期改善系統(tǒng)性能,達(dá)到用戶的要求。2測(cè)試范圍此處主要描述本次性能測(cè)試的技術(shù)及業(yè)務(wù)背景,以及性能測(cè)試的特點(diǎn)。編寫(xiě)此方案的目的是為云應(yīng)用產(chǎn)品提供web性能測(cè)試的方法,因此方案內(nèi)容主要包括測(cè)試環(huán)境、測(cè)試工具、測(cè)試策略、測(cè)試指標(biāo)與測(cè)試執(zhí)行等。測(cè)試背景以云采業(yè)務(wù)為例,要滿足用戶在互聯(lián)網(wǎng)集中采購(gòu)的要求,實(shí)際業(yè)務(wù)中通過(guò)云采平臺(tái)詢報(bào)價(jià)、下單的頻率較高,因此云采平臺(tái)的性能直接決定了業(yè)務(wù)處理的效率,并能夠支撐業(yè)務(wù)并發(fā)的壓力。例如:支撐
2、100家企業(yè)用戶的集中訪問(wèn),以及業(yè)務(wù)處理要求。性能度量指標(biāo)響應(yīng)時(shí)間(TTLB)即“time to last byte”,指的是從客戶端發(fā)起的一個(gè)請(qǐng)求開(kāi)始,到客戶端接收到從服務(wù)器端返回的響應(yīng)結(jié)束,這個(gè)過(guò)程所耗費(fèi)的時(shí)間,響應(yīng)時(shí)間的單位一般為“秒”或者“毫秒”。響應(yīng)時(shí)間網(wǎng)絡(luò)響應(yīng)時(shí)間+應(yīng)用程序響應(yīng)時(shí)間。響應(yīng)時(shí)間標(biāo)準(zhǔn):序號(hào)時(shí)間度量標(biāo)準(zhǔn)結(jié)果1小于2s優(yōu)2介于2s-5s良3介于5s-8s一般4大于8s差事務(wù)能力TPS(transaction per second)服務(wù)器每秒處理的事務(wù)數(shù);一個(gè)事務(wù)是指一個(gè)客戶機(jī)向服務(wù)器發(fā)送請(qǐng)求然后服務(wù)器做出反應(yīng)的過(guò)程??蛻魴C(jī)在發(fā)送請(qǐng)求時(shí)開(kāi)始計(jì)時(shí),收到服務(wù)器響應(yīng)后結(jié)束計(jì)時(shí),一次
3、來(lái)計(jì)算使用的時(shí)間和完成的事務(wù)個(gè)數(shù)。它是衡量系統(tǒng)處理能力的重要指標(biāo)。并發(fā)用戶數(shù)同一時(shí)刻與服務(wù)器進(jìn)行交互的在線用戶數(shù)量。吞吐率(Throughput)單位時(shí)間內(nèi)網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量,也可指單位時(shí)間內(nèi)處理的客戶端請(qǐng)求數(shù)量,是衡量網(wǎng)絡(luò)性能的重要指標(biāo)。吞吐率=吞吐量/傳輸時(shí)間資源利用率這里主要指CPU利用率(CPU utilization),內(nèi)存占用率。3測(cè)試內(nèi)容此處對(duì)性能測(cè)試整體計(jì)劃進(jìn)行描述,包括測(cè)試內(nèi)容以及關(guān)注的性能指標(biāo)。 Web性能測(cè)試內(nèi)容包含:壓力測(cè)試、負(fù)載測(cè)試、前端連接測(cè)試。3.1負(fù)載測(cè)試負(fù)載測(cè)試是為了測(cè)量Web系統(tǒng)在某一負(fù)載級(jí)別上的性能,以保證Web系統(tǒng)在需求范圍內(nèi)能正常工作。負(fù)載級(jí)別可以是某
4、個(gè)時(shí)刻同時(shí)訪問(wèn)Web系統(tǒng)的用戶數(shù)量,也可以是在線數(shù)據(jù)處理的數(shù)量。例如:Web應(yīng)用系統(tǒng)能允許多少個(gè)用戶同時(shí)在線?如果超過(guò)了這個(gè)數(shù)量,會(huì)出現(xiàn)什么現(xiàn)象?Web應(yīng)用系統(tǒng)能否處理大量用戶對(duì)同一個(gè)頁(yè)面的請(qǐng)求?負(fù)載測(cè)試應(yīng)該安排在Web系統(tǒng)發(fā)布以后,放在Internet上接受負(fù)載測(cè)試。3.2壓力測(cè)試在一定飽和狀態(tài)下系統(tǒng)的處理能力,在負(fù)載測(cè)試的基礎(chǔ)上,繼續(xù)加壓到一定階段即是壓力測(cè)試。壓力測(cè)試通常設(shè)定cpu使用率達(dá)到75%以上,內(nèi)存使用率達(dá)到70%以上,用于測(cè)試系統(tǒng)在壓力環(huán)境下的穩(wěn)定性。進(jìn)行壓力測(cè)試是指實(shí)際破壞一個(gè)Web應(yīng)用系統(tǒng),測(cè)試系統(tǒng)的反映。壓力測(cè)試是測(cè)試系統(tǒng)的限制和故障恢復(fù)能力,也就是測(cè)試Web應(yīng)用系統(tǒng)會(huì)不
5、會(huì)崩潰,在什么情況下會(huì)崩潰。黑客常常提供錯(cuò)誤的數(shù)據(jù)負(fù)載,直到Web應(yīng)用系統(tǒng)崩潰,接著當(dāng)系統(tǒng)重新啟動(dòng)時(shí)獲得存取權(quán)。3.3前端連接測(cè)試用戶連接到Web應(yīng)用系統(tǒng)的速度根據(jù)上網(wǎng)方式的變化而變化,他們或許是電話撥號(hào),或是寬帶上網(wǎng)。當(dāng)下載一個(gè)程序時(shí),用戶可以等較長(zhǎng)的時(shí)間,但如果僅僅訪問(wèn)一個(gè)頁(yè)面就不會(huì)這樣。如果Web系統(tǒng)響應(yīng)時(shí)間太長(zhǎng)(例如超過(guò)5秒鐘),用戶就會(huì)因沒(méi)有耐心等待而離開(kāi)。 另外,有些頁(yè)面有超時(shí)的限制,如果響應(yīng)速度太慢,用戶可能還沒(méi)來(lái)得及瀏覽內(nèi)容,就需要重新登陸了。而且,連接速度太慢,還可能引起數(shù)據(jù)丟失,使用戶得不到真實(shí)的頁(yè)面。以上需要關(guān)注的前端性能指標(biāo),主要包含以下三個(gè)指標(biāo):3加載時(shí)間指標(biāo)a.Ti
6、me to First Impression表示從用戶在瀏覽器鍵入U(xiǎn)RL按下回車(chē)鍵一刻開(kāi)始,到頁(yè)面開(kāi)始有反應(yīng)(用戶可以在頁(yè)面中看見(jiàn)一點(diǎn)點(diǎn)內(nèi)容)為止。直觀信號(hào)就是網(wǎng)頁(yè)開(kāi)始顯示title。b.Time to onLoad Event表示從頁(yè)面開(kāi)始顯示內(nèi)容,到瀏覽器開(kāi)始觸發(fā)OnLoad函數(shù)(開(kāi)始執(zhí)行js)這一時(shí)間段。只有當(dāng)初始的文本和所引用的對(duì)象加載完成,瀏覽器才開(kāi)始觸發(fā)OnLoad函數(shù)c.Time to Fully Loaded表示從上一時(shí)間段末到整個(gè)網(wǎng)頁(yè)完全加載完成(所有OnLoad函數(shù)以及相關(guān)的動(dòng)態(tài)資源加載完成)。3資源情況指標(biāo)網(wǎng)頁(yè)由初始的html文本中嵌入圖片以及通過(guò)XHR或者修改dom樹(shù)動(dòng)
7、態(tài)加載的內(nèi)容組成,css負(fù)責(zé)樣式,js負(fù)責(zé)行為。a. Total Number of Requests包括html網(wǎng)頁(yè)請(qǐng)求,css、js資源下載及其它網(wǎng)絡(luò)請(qǐng)求。優(yōu)化的目標(biāo)之一是要盡量減少請(qǐng)求數(shù)。b. Total Number of HTTP 300s/400s/500s表示返回狀態(tài)為300(重定向)、400(客戶端錯(cuò)誤)、500(服務(wù)器端錯(cuò)誤)的http請(qǐng)求。盡量避免這些請(qǐng)求,以提高頁(yè)面load的時(shí)間。造成這些狀態(tài)的原因經(jīng)常是服務(wù)器的實(shí)施、配置和部署問(wèn)題。c. Total Size of Web Site構(gòu)成網(wǎng)頁(yè)元素總的大小。圖片或者js庫(kù)的增加都會(huì)對(duì)下載時(shí)間造成重要的影響。d. Total
8、Size of Images/CSS/JSimage、css、js在網(wǎng)頁(yè)元素大小中占主要比例。e. Total Number of XHR(XMLHttpRequest) Requests通過(guò)js異步從服務(wù)器端獲得數(shù)據(jù)的請(qǐng)求數(shù)。一些js框架提供了跟服務(wù)器端的更新機(jī)器,就是XHR請(qǐng)求。通過(guò)配置可以減少XHR請(qǐng)求的數(shù)目。3網(wǎng)絡(luò)連接指標(biāo)瀏覽器底層的網(wǎng)絡(luò)連接對(duì)資源的下載速度有很大影響。資源的下載過(guò)程分為很多階段。下面介紹這些階段以及瀏覽器、網(wǎng)絡(luò)、請(qǐng)求如何影響這些階段的時(shí)間。a. DNS Timedns 查詢的時(shí)間。網(wǎng)頁(yè)請(qǐng)求會(huì)產(chǎn)生一次尋找該網(wǎng)頁(yè)資源所在主機(jī)的dns查詢。在同個(gè)域名進(jìn)行網(wǎng)頁(yè)切換不會(huì)造成新的
9、dns查詢。b. Connect Time指瀏覽器和服務(wù)器之間建立tcp/ip連接的時(shí)間,對(duì)于ssl連接包括握手的時(shí)間。網(wǎng)絡(luò)連接過(guò)慢、使用ssl、使用短連接而非常連接都是造成connecttime較多的原因。c. Server Time指收到請(qǐng)求后服務(wù)器邏輯處理的時(shí)間,d. Transfer Time這一指標(biāo)與瀏覽器和服務(wù)器之間的連接速度相一致,通過(guò)減小傳輸內(nèi)容或使用cdn來(lái)降低Transfer Time。e. Wait Time等待時(shí)間和同一個(gè)域中服務(wù)資源的數(shù)量直接相關(guān)。每個(gè)域的瀏覽器的物理網(wǎng)絡(luò)的限制,導(dǎo)致資源等待可用的連接。減少資源的數(shù)量,或?qū)①Y源散布在不同的域,能將這一時(shí)間降低。平均等待
10、時(shí)間的大小更能反映等待時(shí)間是否需要注意。f. Number of Domains / Single Resource Domains部署網(wǎng)站資源的域主機(jī)數(shù)量是很重要的,因?yàn)樗绊懙腄NS,連接和等待時(shí)間。專(zhuān)門(mén)用戶資源下載的域是必要的,他將直接減少等待時(shí)間。應(yīng)避免單一的資源域,否則你將為dns查詢以及資源下載付出昂貴的代價(jià)。4測(cè)試執(zhí)行此處包含性能測(cè)試的軟硬件環(huán)境準(zhǔn)備,所需測(cè)試工具與測(cè)試步驟。4.1環(huán)境與數(shù)據(jù)準(zhǔn)備4.負(fù)載測(cè)試主機(jī)數(shù)量配置詳情操作系統(tǒng)數(shù)據(jù)庫(kù)中間件測(cè)試工具監(jiān)控工具4.壓力測(cè)試主機(jī)數(shù)量配置詳情操作系統(tǒng)數(shù)據(jù)庫(kù)中間件測(cè)試工具監(jiān)控工具4.前端連接測(cè)試略4.2測(cè)試步驟與測(cè)試結(jié)果輸出4.負(fù)載測(cè)試測(cè)
11、試工具JmeterApache JMeter是Apache組織開(kāi)發(fā)的基于Java的壓力測(cè)試工具,用于對(duì)軟件做壓力測(cè)試,它最初被設(shè)計(jì)用于Web應(yīng)用測(cè)試,但后來(lái)擴(kuò)展到其他測(cè)試領(lǐng)域。 它可以用于測(cè)試靜態(tài)和動(dòng)態(tài)資源,例如靜態(tài)文件、Java小服務(wù)程序、CGI 腳本、Java 對(duì)象、數(shù)據(jù)庫(kù)、FTP 服務(wù)器等等。1.建立測(cè)試計(jì)劃啟動(dòng)jmeter后,jmeter會(huì)自動(dòng)生成一個(gè)空的測(cè)試計(jì)劃,用戶可以基于該測(cè)試計(jì)劃建立自己的測(cè)試計(jì)劃。2.添加線程組一個(gè)性能測(cè)試請(qǐng)求負(fù)載是基于一個(gè)線程組完成的。一個(gè)測(cè)試計(jì)劃必須有一個(gè)線程組。測(cè)試計(jì)劃添加線程組非常簡(jiǎn)單。在測(cè)試計(jì)劃右鍵彈出下拉菜單(添加->Threads(User
12、s)->線程組)中選擇線程組即可。jmeter中 每個(gè)測(cè)試計(jì)劃至少需要包含一個(gè)線程組,當(dāng)然也可以在一個(gè)計(jì)劃中創(chuàng)建多個(gè)線程組,那么多個(gè)線程組之間又會(huì)怎樣的順序執(zhí)行(串行還是并行)?在測(cè)試計(jì)劃下面多個(gè)線程是并行執(zhí)行的,也就是說(shuō)這些線程組是同時(shí)被初始化并同時(shí)執(zhí)行線程組下的Sampler的。線程組主要包含三個(gè)參數(shù):線程數(shù)、準(zhǔn)備時(shí)長(zhǎng)(Ramp-Up Period(in seconds)、循環(huán)次數(shù)。線程數(shù):虛擬用戶數(shù)。一個(gè)虛擬用戶占用一個(gè)進(jìn)程或線程。設(shè)置多少虛擬用戶數(shù)在這里也就是設(shè)置多少個(gè)線程數(shù)。準(zhǔn)備時(shí)長(zhǎng): 設(shè)置的虛擬用戶數(shù)需要多長(zhǎng)時(shí)間全部啟動(dòng)。如果線程數(shù)為20 ,準(zhǔn)備時(shí)長(zhǎng)為10 ,那么需要10秒鐘
13、啟動(dòng)20個(gè)線程。也就是每秒鐘啟動(dòng)2個(gè)線程。循環(huán)次數(shù):每個(gè)線程發(fā)送請(qǐng)求的次數(shù)。如果線程數(shù)為20 ,循環(huán)次數(shù)為100 ,那么每個(gè)線程發(fā)送100次請(qǐng)求??傉?qǐng)求數(shù)為20*100=2000 。如果勾選了“永遠(yuǎn)”,那么所有線程會(huì)一直發(fā)送請(qǐng)求,一到選擇停止運(yùn)行腳本。設(shè)置合理的線程數(shù)對(duì)于能否達(dá)到測(cè)試目標(biāo)有決定性的影響。在本例中,要求得到網(wǎng)站首頁(yè)在20 QPS 負(fù)載情況下的響應(yīng)時(shí)間,如果如果線程數(shù)量設(shè)置的過(guò)小,則很可能無(wú)法達(dá)到設(shè)定的QPS要求。另外,設(shè)置合理的循環(huán)次數(shù)也很重要,除了上面介紹的固定循環(huán)次數(shù)與永遠(yuǎn)外;也可以靈活的選擇設(shè)定測(cè)試運(yùn)行時(shí)間。勾選“調(diào)度器”,進(jìn)行調(diào)度器配置。3. 添加HTTP請(qǐng)求添加完成線程
14、組后,在線程組上右鍵菜單(添加->Sampler->HTTP請(qǐng)求)選擇HTTP請(qǐng)求。對(duì)于jmeter來(lái)說(shuō),取樣器(Sampler)是與服務(wù)器進(jìn)行交互的單元。一個(gè)取樣器通常進(jìn)行三部分的工作:向服務(wù)器發(fā)送請(qǐng)求記錄服務(wù)器的響應(yīng)數(shù)據(jù)記錄相應(yīng)時(shí)間信息本次性能測(cè)試的目的是“了解云采首頁(yè)在負(fù)載達(dá)到20 QPS時(shí)的響應(yīng)時(shí)間”,因此需要控制向云采首頁(yè)發(fā)送請(qǐng)求的負(fù)載為20QPS。QPS : Query Per Second 每秒查詢率。是一臺(tái)查詢服務(wù)器每秒能夠處理的查詢次數(shù)。在因特網(wǎng)上,作為域名系統(tǒng)服務(wù)器的機(jī)器的性能經(jīng)常用每秒查詢率來(lái)衡量。4.壓力測(cè)試測(cè)試工具UAPRunnerUAPRunner 是一
15、款面向樹(shù)形數(shù)據(jù)結(jié)構(gòu),模擬用戶(UAPRunner 中表示為虛擬用戶)通過(guò)瀏覽器訪問(wèn)B/S 架構(gòu)和UAP 平臺(tái)系統(tǒng)的行為、實(shí)現(xiàn)向服務(wù)器端發(fā)送請(qǐng)求及對(duì)服務(wù)器端發(fā)回的響應(yīng)進(jìn)行處理的工具。利用UAPRunner 可以實(shí)現(xiàn)對(duì)Web 輕量級(jí)和基于UAP 平臺(tái)的性能負(fù)載測(cè)試,通過(guò)模擬上萬(wàn)的用戶實(shí)施并發(fā)負(fù)載。7:8080/gitlab/test-team/download/tree/master/UAPRUNNER4. 創(chuàng)建用例流、場(chǎng)景5. 編輯事務(wù)6. 參數(shù)化7. 增加虛擬用戶8. 查看測(cè)試結(jié)果9. 壓力數(shù)據(jù):cpu使用率達(dá)到75%以上,內(nèi)存使用率達(dá)到70%以上,查看系統(tǒng)穩(wěn)定性(事務(wù)響應(yīng)時(shí)間、事務(wù)通過(guò)率)4.前端連接測(cè)試測(cè)試工具WebPagetestWebPageTest是一款非常強(qiáng)大的Web頁(yè)面性能評(píng)測(cè)工具,已經(jīng)開(kāi)源。在該網(wǎng)站輸入你的url,就會(huì)生成1個(gè)url加載的時(shí)間
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 4年級(jí)上冊(cè)數(shù)學(xué)人教版說(shuō)課稿7篇
- 網(wǎng)頁(yè)制作案例教程HTML5+CSS3課程設(shè)計(jì)
- 《數(shù)理經(jīng)濟(jì)學(xué)》課程教學(xué)大綱
- 復(fù)習(xí)真題卷04 第6-7單元(解析版)
- DBJ51-T 198-2022 四川省既有民用建筑結(jié)構(gòu)安全隱患排查技術(shù)標(biāo)準(zhǔn)
- 2009年高考語(yǔ)文試卷(全國(guó)Ⅱ卷)(解析卷)
- 建筑工程行業(yè)工程測(cè)量培訓(xùn)體會(huì)
- 通信行業(yè)客服工作總結(jié)
- 《色彩的漸變》課件
- 有關(guān)醫(yī)院的實(shí)習(xí)報(bào)告三篇
- 機(jī)械設(shè)備安裝工施工詳細(xì)注意事項(xiàng)培訓(xùn)
- 國(guó)際結(jié)算期末復(fù)習(xí)題庫(kù)及答案
- 銀行高質(zhì)量發(fā)展-發(fā)言稿
- 裝飾裝修工程施工重難點(diǎn)及保證措施
- 人格心理學(xué)導(dǎo)論- 課件 第5、6章-人本理論與應(yīng)用、特質(zhì)理論與應(yīng)用
- 《胸腔穿刺術(shù)》課件
- 內(nèi)墻抹灰施工工藝課件
- 潛孔錘施工方案
- 行政大樓管理規(guī)章制度
- 慢性心衰患者的治療新選擇-CRT
- 物理化學(xué)核心教程第三版總復(fù)習(xí)題及答案
評(píng)論
0/150
提交評(píng)論