性能測試監(jiān)控指標(biāo)技術(shù)總結(jié)_第1頁
性能測試監(jiān)控指標(biāo)技術(shù)總結(jié)_第2頁
性能測試監(jiān)控指標(biāo)技術(shù)總結(jié)_第3頁
性能測試監(jiān)控指標(biāo)技術(shù)總結(jié)_第4頁
性能測試監(jiān)控指標(biāo)技術(shù)總結(jié)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

9/9性能測試監(jiān)控指標(biāo)技術(shù)總結(jié)1.性能測試設(shè)計(jì)

(1)逐級(jí)加壓測試

在本次性能測試過程中,除了以前使用的負(fù)載測試、壓力測試和疲勞強(qiáng)度測試等方式外,我方還設(shè)計(jì)了逐級(jí)加壓的性能測試場景。主要目的是在一個(gè)場景采用逐漸增加用戶數(shù)量的方法逐漸加大系統(tǒng)的壓力,檢測系統(tǒng)在壓力逐漸增加情況下的服務(wù)情況,更準(zhǔn)確地找出在用戶可接受的情況下系統(tǒng)能承受的最大用戶數(shù)和最佳用戶數(shù)量。該方式在實(shí)際使用中,達(dá)到效好的效果。下面結(jié)合移動(dòng)項(xiàng)目的測試場景,對(duì)該測試方式進(jìn)行說明。

在進(jìn)行逐級(jí)加壓的性能測試場景前應(yīng)先進(jìn)行負(fù)載或壓力測試,確定系統(tǒng)在大致達(dá)到某一數(shù)量級(jí)并發(fā)用戶時(shí)系統(tǒng)性能變得不可接受。然后以這個(gè)并發(fā)用戶數(shù)下的最大響應(yīng)時(shí)間為逐級(jí)加壓場景的時(shí)間階梯。如在前面的測試中800用戶并發(fā)時(shí),系統(tǒng)出現(xiàn)了事務(wù)失敗,響應(yīng)時(shí)間最大為26秒左右,那么逐級(jí)加壓測試場景就可以設(shè)定為1-800用戶,每30秒增加一批用戶,每批增加的用戶數(shù)與要測試的時(shí)間長度和用戶需求要求的并發(fā)用戶精確程度有一定關(guān)系,如用戶要求測試結(jié)果精確在50用戶以內(nèi),那么就可以采用每30秒增加40個(gè)并發(fā)用戶數(shù)的方式,全部用戶登錄的時(shí)間約為(800用戶/40用戶)*30秒=600秒,再加上幾分鐘的全部并發(fā)用戶執(zhí)行時(shí)間,總體測試時(shí)間可以設(shè)計(jì)為10分鐘(600秒)+2分鐘(觀察運(yùn)行)=12分鐘。

以移動(dòng)項(xiàng)目該場景的為例,測試結(jié)果如下圖

圖7-4并發(fā)用戶數(shù)與響應(yīng)時(shí)間對(duì)照

結(jié)果分析如下:

系統(tǒng)在1-800用戶并發(fā)壓力逐漸加大的情況下,響應(yīng)時(shí)間逐漸變長(如圖7-4),根據(jù)2-5-10原則,可以推測,在現(xiàn)有系統(tǒng)軟件配置下,當(dāng)并發(fā)用戶在15(參考每秒請(qǐng)求數(shù)為5)以下時(shí),用戶鑒權(quán)基本可以2秒內(nèi)得到響應(yīng);當(dāng)并發(fā)用戶在

100(參考每秒請(qǐng)求數(shù)為16)以下時(shí),用戶鑒權(quán)基本可以5秒內(nèi)得到響應(yīng);當(dāng)并發(fā)用戶在240(參考每秒請(qǐng)求數(shù)為23)以下時(shí),用戶鑒權(quán)基本可以10秒內(nèi)得到響應(yīng)(如圖7-4)。

(2)項(xiàng)目監(jiān)控指標(biāo)

本次性能測試系統(tǒng)架構(gòu)是典型的Unix+Weblogic+Oracle形式,監(jiān)控指標(biāo)較為全面并給出了性能分析的參考值,可以作以后此類項(xiàng)目的參考基準(zhǔn):

分類指標(biāo)名稱

外部表現(xiàn)事務(wù)響應(yīng)時(shí)間事務(wù)成功數(shù)事務(wù)失敗數(shù)每秒請(qǐng)求次數(shù)

吞吐量

UnixCPUutilizationAverageLoad

Pagingrate

Diskrate

Contextswitchesrate高速緩存區(qū)命中率

庫快存命中率

共享區(qū)庫緩存區(qū)命中率

SGA中字典緩沖區(qū)的命中率

Oracle

回滾段的爭用

SGA中重做日志緩存區(qū)的命中率

監(jiān)控內(nèi)存和硬盤的排序比率

當(dāng)前打開游標(biāo)總數(shù)

Weblogic線程等待隊(duì)列長度

Java堆可用百分比

ServerRutime/JVMRuntime/HeapSizeCurrent

ServerRutime/JVMRuntime/HeapFreeCurrent

ServerRutime/JDBCConnectionPool/WaitForConnectionCountServerRutime/JDBCConnectionPool/MaxCacapcity

ServerRutime/JDBCConnectionPool/WaitForSecondHighCountServerRutime/JDBCConnectionPool/ActiveConnectionsCountServerRutime/ExecuteQueduRuntime/ExecuteThreadCurrentIdleCountServerRutime/ExecuteQueduRuntime/PendingRequestOldestTime

ServerRutime/ExecuteQueduRuntime/PendingRequestCurren

(3)自定義監(jiān)控指標(biāo)

由于Loadrunner工具自身定義的Oracle監(jiān)控指標(biāo)較少,不

能滿足進(jìn)行詳細(xì)結(jié)果分析的要求。我方在對(duì)Loadrunner的結(jié)果

計(jì)數(shù)器文件進(jìn)行了修改,自定義了一系列監(jiān)控指標(biāo)。完性能分析提供了很好的依據(jù)。現(xiàn)在Loadrunner監(jiān)控Oracle自定義計(jì)數(shù)器方法說明如下:

a)添加自定義計(jì)數(shù)器的方法

要?jiǎng)?chuàng)建自定義查詢,請(qǐng)執(zhí)行以下操作:

在安裝路徑的MercuryLoadRunner\dat\monitors找

到vmon.cfg文件,打開。

在vmon.cfg文件的第三行中,CustomCounters=指出

要?jiǎng)?chuàng)建的自定義計(jì)數(shù)器個(gè)數(shù)。

在vmon.cfg文件中為新計(jì)數(shù)器新建一節(jié),每節(jié)都有以

下格式:

[Custom0]

Name=FiveHundred

Description=Thiscounteralwaysreturns500.

Query=SELECT500FROMDUAL

IsRate=0

在[Custom#]行,將計(jì)數(shù)器順序中的下一個(gè)數(shù)字分配

給新的自定義計(jì)數(shù)器。

注意:自定義計(jì)數(shù)器必須是以數(shù)字0開始的聯(lián)系順

序。

在Name行,輸入新計(jì)數(shù)器的名稱(可以輸入中文)。

在Description行,輸入對(duì)該計(jì)數(shù)器的描述或解釋

(可以輸入中文)。

在Query行,輸入恰好返回?cái)?shù)據(jù)庫一行的SQL查詢的文

本,該行必須包含一列數(shù)值。

注意:自定義查詢文本不能夠超過512字符。

在IsRate行,如果希望數(shù)據(jù)庫將計(jì)數(shù)器報(bào)告為一個(gè)絕

對(duì)值,請(qǐng)輸入0;如果希望數(shù)據(jù)庫報(bào)告每單位時(shí)間計(jì)

數(shù)器的更改,請(qǐng)輸入1。注意:自定義查詢無法返回

負(fù)值。

例:

[Custom0]

;Namemustbeunique

Name=庫快存命中率

Description=該計(jì)數(shù)器返回當(dāng)前庫快存命中率

Query=SELECT100*((sum(pins-reloads))/sum(pins))fromv$librarycache

IsRate=0

b)配置文件示例對(duì)象

安裝路徑的MercuryLoadRunner\dat\monitors找到vmon.cfg文件,修改如下:

[V$Monitor]

Counters=150

CustomCounters=12

;Howmanysecondsforeachdatasample?

SamplingRate=10

;[Custom0]

;Namemustbeunique

;Name=FiveHundred

;Description=Thiscounteralwaysreturns500.

;Query=SELECT500FROMDUAL

;IsRate=0

;[Custom1]

;Name=ThirtyFive

;Description=Thiscounteralwaysreturns35.

;Query=SELECT35FROMDUAL

;IsRate=1

[Custom0]

;Namemustbeunique

Name=庫快存命中率

Description=該計(jì)數(shù)器返回當(dāng)前庫快存命中率

Query=SELECT100*((sum(pins-reloads))/sum(pins))fromv$librarycache

IsRate=0

[Custom1]

;Namemustbeunique

Name=高速緩存區(qū)命中率

Description=oracledatabaseshootstraight

Query=SELECTround(1-SUM(PHYSICAL_READS)/(SUM(DB_BLOCK_GETS)+SUM(CONSISTENFROM(SELECTCASEWHENNAME='physicalreads'THENVALUEENDPHYSICAL_READS,CASEblockgets'THENVALUEENDDB_BLOCK_GETS,CASEWHENNAME='consistentgets'THCONSISTENT_GETSFROMV$SYSSTATWHERENameIN('physicalreads','dbblockgets',IsRate=0

[Custom2]

;Namemustbeunique

Name=共享區(qū)庫緩存區(qū)命中率

Description=命中率應(yīng)大于0.99

Query=Selectround(sum(pins-reloads)/sum(pins)*100,2)fromv$librarycacheIsRate=0

[Custom3]

;Namemustbeunique

Name=共享區(qū)字典緩存區(qū)命中率

Description=命中率應(yīng)大于0.85

Query=Selectround(sum(gets-getmisses-usage-fixed)/sum(gets)*100,2)fromIsRate=0

[Custom4]

;Namemustbeunique

Name=檢測回滾段的爭用

Description=應(yīng)該小于1%

Query=selectround(sum(waits)/sum(gets)*100,2)fromv$rollstat

IsRate=0

[Custom5]

;Namemustbeunique

Name=檢測回滾段收縮次數(shù)

Description=應(yīng)該小于1%

Query=selectsum(shrinks)fromv$rollstat,v$rollnamewherev$rolls

IsRate=0

[Custom6]

;Namemustbeunique

Name=監(jiān)控表空間的I/O讀總數(shù)

Description=監(jiān)控表空間的I/O

Query=selectsum(f.phyrds)pyrfromv$filestatf,dba_data_filesdfwheref.

IsRate=0

[Custom7]

;Namemustbeunique

Name=監(jiān)控表空間的I/O塊讀總數(shù)

Description=監(jiān)控表空間的I/O

Query=selectsum(f.phyblkrd)pbrfromv$filestatf,dba_data_filesdfwheredf.file_id

IsRate=0

[Custom8]

;Namemustbeunique

Name=監(jiān)控表空間的I/O寫總數(shù)

Description=監(jiān)控表空間的I/O

Query=selectsum(f.phywrts)pywfromv$filestatf,dba_data_filesdfwherefdf.file_id

IsRate=0

[Custom9]

;Namemustbeunique

Name=監(jiān)控表空間的I/O塊寫總數(shù)

Description=監(jiān)控表空間的I/O

Query=selectsum(f.phyblkwrt)pbwfromv$filestatf,dba_data_filesdfwherdf.file_id

IsRate=0

[Custom10]

;Namemustbeunique

Name=監(jiān)控SGA中重做日志緩存區(qū)的命中率

Description=監(jiān)控SGA中重做日志緩存區(qū)的命中率

Query=SELECT

Decode(immediate_gets+immediate_misses,0,0,immediate_misses/(immediate_gets+immeratio2FROMv$latchWHEREnameIN('redocopy')

IsRate=0

[Custom11]

;Namemustbeunique

Name=監(jiān)控內(nèi)存和硬盤的排序比率

Description=監(jiān)控內(nèi)存和硬盤的排序比率

Query=selectround(sum(casewhenname='sorts(disk)'thenvalueels

name='sorts(memory)'thenvalueelse0end)*100,2)from(SELECTname,valueFWHEREnameIN('sorts(memory)','sorts(disk)'))

IsRate=0

c)常用自定義計(jì)數(shù)器列表

序號(hào)監(jiān)

SQL算法

1數(shù)

據(jù)

區(qū)

率SELECTround(1-SUM(PHYSICAL_READS)/(SUM(DB_BLOCK_GETS)+SUM(CONSISTENT(SELECTCASEWHENNAME='physicalreads'THENVALUEENDPHYSICAL_READS,Cgets'THENVALUEENDDB_BLOCK_GETS,CASEWHENNAME='consistentgets'CONSISTENT_GETSFROMV$SYSSTATWHERENameIN('physicalreads','dbbloc

2庫

SELECT100*((sum(pins-reloads))/sum(pins))fromv$librarycache

3共

區(qū)

區(qū)

Selectround(sum(pins-reloads)/sum(pins)*100,2)fromv$librarycache

Selectround(sum(gets-getmisses-usage-fixed)/sum(gets)*100,2)fromv4監(jiān)

SGA

區(qū)

selectround(sum(waits)/sum(gets)*100,2)fromv$rollstat

5檢

selectsum(shrinks)fromv$rollstat,v$rollnamewherev$http://./doc/81a21d68c9d376eeaeaad1f34693daef5ff7137c.htmln=6檢

數(shù)

selectsum(f.phyrds)pyrfromv$filestatf,dba_data_filesdfwheref.f7監(jiān)

I/O

數(shù)

8監(jiān)

I/O

數(shù)

selectsum(f.phyblkrd)pbrfromv$filestatf,dba_data_filesdfwhere

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論