LoadRunner壓力測(cè)試實(shí)例_第1頁(yè)
LoadRunner壓力測(cè)試實(shí)例_第2頁(yè)
LoadRunner壓力測(cè)試實(shí)例_第3頁(yè)
LoadRunner壓力測(cè)試實(shí)例_第4頁(yè)
LoadRunner壓力測(cè)試實(shí)例_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.:.;LoadRunner壓力測(cè)試實(shí)例摘要:本文經(jīng)過(guò)實(shí)例講解引見了LoadRunner 工具的運(yùn)用,介于公司的實(shí)踐情況,文中主要是對(duì)工具的根本運(yùn)用做了詳細(xì)描畫,高級(jí)運(yùn)用方面除性能計(jì)數(shù)器與參數(shù)設(shè)置外其它均未涉及,待以后補(bǔ)充。目的是使公司人員根據(jù)該手冊(cè)便可以獨(dú)立運(yùn)用Loadrunner進(jìn)展壓力測(cè)試主題詞:Loadrunner 工具 壓力測(cè)試1 LoadRunner 概要引見LoadRunner 是一種預(yù)測(cè)系統(tǒng)行為和性能的工業(yè)規(guī)范級(jí)負(fù)載測(cè)試工具。經(jīng)過(guò)以模擬上千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來(lái)確認(rèn)和查找問(wèn)題,LoadRunner 可以對(duì)整個(gè)企業(yè)架構(gòu)進(jìn)展測(cè)試。經(jīng)過(guò)運(yùn)用LoadRunner ,

2、企業(yè)能最大限制地縮短測(cè)試時(shí)間, 優(yōu)化性能和加速運(yùn)用系統(tǒng)的發(fā)布周期。目前企業(yè)的網(wǎng)絡(luò)運(yùn)用環(huán)境都必需支持大量用戶,網(wǎng)絡(luò)體系架構(gòu)中含各類運(yùn)用環(huán)境且由不同供應(yīng)商提供軟件和硬件產(chǎn)品。難以預(yù)知的用戶負(fù)載和愈來(lái)愈復(fù)雜的運(yùn)用環(huán)境使公司時(shí)時(shí)擔(dān)憂會(huì)發(fā)生用戶呼應(yīng)速度過(guò)慢, 系統(tǒng)解體等問(wèn)題。這些都不可防止地導(dǎo)致公司收益的損失。Mercury Interactive 的 LoadRunner 能讓企業(yè)維護(hù)本人的收入來(lái)源, 無(wú)需購(gòu)置額外硬件而最大限制地利用現(xiàn)有的IT 資源, 并確保終端用戶在運(yùn)用系統(tǒng)的各個(gè)環(huán)節(jié)中對(duì)其測(cè)試運(yùn)用的質(zhì)量, 可靠性和可擴(kuò)展性都有良好的評(píng)價(jià)。LoadRunner 是一種適用于各種體系架構(gòu)的自動(dòng)負(fù)載測(cè)試

3、工具, 它能預(yù)測(cè)系統(tǒng)行為并優(yōu)化系統(tǒng)性能。LoadRunner 的測(cè)試對(duì)象是整個(gè)企業(yè)的系統(tǒng), 它經(jīng)過(guò)模擬實(shí)踐用戶的操作行為和實(shí)行實(shí)時(shí)性能監(jiān)測(cè), 來(lái)協(xié)助 您更快的查找和發(fā)現(xiàn)問(wèn)題。此外,LoadRunner 能支持廣范的協(xié)議和技術(shù), 為您的特殊環(huán)境提供特殊的處理方案。1.1 根本步驟運(yùn)用LoadRunner 完成測(cè)試普通分為四個(gè)步驟:1Vvitrual User Generator 創(chuàng)建腳本創(chuàng)建腳本,選擇協(xié)議錄制腳本編輯腳本檢查修正腳天性否有誤2中央控制器Controller來(lái)調(diào)度虛擬用戶創(chuàng)建Scenario,選擇腳本設(shè)置機(jī)器虛擬用戶數(shù)設(shè)置Schedule假設(shè)模擬多機(jī)測(cè)試,設(shè)置Ip Spoofer3

4、運(yùn)轉(zhuǎn)腳本 分析scenario4分析測(cè)試結(jié)果2 安裝LoadRunner 中文版LoadRunner 分為Windows 版本和Unix 版本。假設(shè)我們的一切測(cè)試環(huán)境基于Windows 平臺(tái), 那么我們只需安裝Windows 版本即可。本章講解的安裝過(guò)程就是LoadRunner7.8中文的Windows 版本的安裝。2.1 系統(tǒng)要求目前部門的測(cè)試機(jī)和任務(wù)機(jī)器足可以滿足LoadRunner7.8 的最低要求。不過(guò)要比較好的運(yùn)轉(zhuǎn)LoadRunner, 內(nèi)存最好在512M 以上, 安裝LoadRunner 的磁盤空間至少剩余500M。操作系統(tǒng)最好為Windows 2000。2.2 安裝過(guò)程 Load

5、Runner7.8中文版安裝根本分兩個(gè)步驟:首先安裝LoadRunner7.8英文原版,然后安裝中文言語(yǔ)插件包LoadRunner7.8英文原版存放位置: HYPERLINK 10.149. test toolsLR7.8nt.rar 10.149. test toolsLR7.8nt.rar將緊縮文件拷貝解壓到本機(jī)的安裝,過(guò)程比較簡(jiǎn)單要開場(chǎng)安裝LoadRunner,以Administrator 的身份登陸Windows2000 后,運(yùn)轉(zhuǎn)LoadRunner 安裝目錄下Setup.exe 即可進(jìn)入安裝程序。1. 在“Registration Information 界面中, 輸入序列號(hào) 不用改

6、動(dòng), 就是n 個(gè)82. 在安裝類型界面中, 選擇一種安裝類型下面簡(jiǎn)單的對(duì)這三種安裝類型進(jìn)展引見Standalone Installation 將要安裝LoadRunner 在一臺(tái)計(jì)算機(jī)上Network Installation 把LoadRunner 安裝在一個(gè)網(wǎng)絡(luò)驅(qū)動(dòng)器上, 這樣任何能銜接到這個(gè)網(wǎng)絡(luò)驅(qū)動(dòng)器的計(jì)算機(jī)都可以運(yùn)用LoadRunner 的部分或者全部組件。Network Installation and shortcuts 和Network Installation 類似,不同的只是這種類型將把本人的計(jì)算機(jī)配置成Workstation 來(lái)運(yùn)轉(zhuǎn)LoadRunner。假設(shè)選擇了第二項(xiàng),

7、我們還需求進(jìn)展2.3 的安裝來(lái)配置Workstation.。思索到我們是本人學(xué)習(xí)研討學(xué)習(xí), 選擇第一種安裝方法。3. 在安裝方式界面中, 需求選擇一種安裝方式。建議選擇“ 自定義安裝, 這樣一切的組件都會(huì)一次安裝。下面簡(jiǎn)單的對(duì)各個(gè)安裝方式進(jìn)展引見Typical Installation 安裝比較通用的組件, 包括Controller、Vuser、在線協(xié)助 和腳該選項(xiàng)適宜于控制Vusers 的機(jī)器。Load Generator 只安裝運(yùn)轉(zhuǎn)Vusers 產(chǎn)生負(fù)載的組件。該選項(xiàng)適宜于只產(chǎn)生負(fù)載, 而不控制Vusers 的機(jī)器。MI Listener 安裝MI Listener 組件, 用來(lái)透過(guò)防火墻

8、來(lái)運(yùn)轉(zhuǎn)Vusers 并且監(jiān)視性能。Custom Installation 自定義安裝, 我們將運(yùn)用該選項(xiàng), 安裝全部的組件。4. 在“License Information 中輸入License Key 后,Next, 繼續(xù) 100個(gè)用戶無(wú)時(shí)間限制:AEAMAUIK-YAFEKEKJJKEEA-BCJGI 10000個(gè)用戶有時(shí)間限制:AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB5. 假設(shè)是網(wǎng)絡(luò)安裝,最好把網(wǎng)絡(luò)驅(qū)動(dòng)器映射本錢機(jī)的一個(gè)盤符, 安裝LoadRunner 的各級(jí)目錄不要包含中文字符。6. Next 后進(jìn)入拷貝文件的界面7. 拷貝文件完成后, 進(jìn)入“U

9、ser Login Settings 界面。Allow virtual users to run on this machine without user login 需求在下面輸入域、用戶名和密碼, 這樣運(yùn)轉(zhuǎn)Load Generator 的機(jī)器會(huì)自動(dòng)登陸到網(wǎng)絡(luò), Manual log in to the Load Generator machine 運(yùn)轉(zhuǎn)Vusers 時(shí), 自動(dòng)登陸到網(wǎng)絡(luò), 無(wú)需登陸用戶名和密碼, 這樣Vusers 就會(huì)不用任何干涉自動(dòng)的啟動(dòng)運(yùn)轉(zhuǎn)。引薦選擇該項(xiàng)。這里選擇第一項(xiàng)和第二項(xiàng)都可以。8. 重新啟動(dòng), 安裝完成LoadRunner7.8英文原版存放位置: HYPERLI

10、NK 10.149.test tools LoadRunner7.8中文版.rar 10.149.test tools LoadRunner7.8中文版.rar將緊縮文件拷貝解壓到本機(jī)的安裝.。過(guò)程比較簡(jiǎn)單要開場(chǎng)安裝以Administrator 的身份登陸Windows2000 后,留意要退出曾經(jīng)運(yùn)轉(zhuǎn)的英文原版運(yùn)轉(zhuǎn)安裝目錄下Setup.exe 即可進(jìn)入安裝程序,安裝過(guò)程中一切人機(jī)交流窗口多項(xiàng)選擇擇默許“下一步即可留意:解壓文件存放的文件夾不可起中文名字,安裝目錄最好運(yùn)用默許,假設(shè)更改那么安裝目錄不要運(yùn)用中文名!3工程背景引見3.1 背景概述“LMS網(wǎng)??荚嚻脚_(tái)是一個(gè)典型的三層B/S架構(gòu)的MIS

11、系統(tǒng)客戶端/運(yùn)用效力器/數(shù)據(jù)庫(kù)管,中間層是業(yè)務(wù)邏輯層,運(yùn)用效力器處置一切的業(yè)務(wù)邏輯,但運(yùn)用效力器本身不提供負(fù)載平衡的才干,而是利用開發(fā)工具提供的ORB對(duì)象懇求代理軟件保證多個(gè)運(yùn)用效力器間的負(fù)載平衡。本次測(cè)試的目的是:進(jìn)展運(yùn)用效力器的壓力測(cè)試,找出運(yùn)用效力器可以支持的最大客戶端數(shù)。方法是:按照正常業(yè)務(wù)壓力估算值的110倍進(jìn)展測(cè)試,調(diào)查運(yùn)用效力器的運(yùn)轉(zhuǎn)情況。3.2壓力測(cè)試用例 場(chǎng)景描畫一:用戶登錄的lmm模塊,總共登陸24個(gè)用戶,一切用戶都同時(shí)并發(fā)操作。 用戶點(diǎn)擊“登記的教程用戶點(diǎn)擊“啟動(dòng),進(jìn)展課程學(xué)習(xí),進(jìn)入DS模塊在DS模塊中進(jìn)展學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程構(gòu)造樹;然后,進(jìn)展課程內(nèi)容的學(xué)習(xí)

12、。點(diǎn)擊“前往LMS按鈕,前往到lmm模塊,點(diǎn)擊“退出按鈕,退出系統(tǒng)場(chǎng)景描畫二:用戶登陸lmm模塊,總共登錄48個(gè)用戶,每1秒登錄1個(gè)用戶用戶點(diǎn)擊“已登記教程用戶點(diǎn)擊“啟動(dòng),進(jìn)展課程學(xué)習(xí),進(jìn)入DS模塊在DS模塊中進(jìn)展學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程構(gòu)造樹;然后,進(jìn)展課程內(nèi)容的學(xué)習(xí);點(diǎn)擊“前往LMS按鈕,前往到lmm模塊,點(diǎn)擊“退出按鈕,退出系統(tǒng)場(chǎng)景描畫三:用戶登錄的lmm模塊,總共登陸48個(gè)用戶,一切用戶都同時(shí)并發(fā)操作。 用戶點(diǎn)擊“登記的教程用戶點(diǎn)擊“啟動(dòng),進(jìn)展課程學(xué)習(xí),進(jìn)入DS模塊在DS模塊中進(jìn)展學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程構(gòu)造樹;然后,進(jìn)展課程內(nèi)容的學(xué)習(xí)。點(diǎn)擊“前往LMS按鈕,前往到

13、lmm模塊點(diǎn)擊“退出按鈕,退出系統(tǒng)場(chǎng)景描畫四:用戶登錄的lmm模塊,總共登陸48個(gè)用戶,每秒同時(shí)登錄10個(gè)用戶。 用戶點(diǎn)擊“登記的教程用戶點(diǎn)擊“啟動(dòng),進(jìn)展課程學(xué)習(xí),進(jìn)入DS模塊在DS模塊中進(jìn)展學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程構(gòu)造樹;然后,進(jìn)展課程內(nèi)容的學(xué)習(xí)。點(diǎn)擊“前往LMS按鈕,前往到lmm模塊,點(diǎn)擊“退出按鈕,退出系統(tǒng)場(chǎng)景描畫五:用戶登錄的lmm模塊,總共登陸100個(gè)用戶,一切用戶同時(shí)并發(fā)操作。 用戶點(diǎn)擊“登記的教程用戶點(diǎn)擊“啟動(dòng),進(jìn)展課程學(xué)習(xí),進(jìn)入DS模塊在DS模塊中進(jìn)展學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程構(gòu)造樹;然后,進(jìn)展課程內(nèi)容的學(xué)習(xí)。點(diǎn)擊“前往LMS按鈕,前往到lmm模塊場(chǎng)景描畫六:

14、用戶登錄的lmm模塊,總共登陸200個(gè)用戶,一切用戶同時(shí)并發(fā)操作用戶點(diǎn)擊“登記的教程用戶點(diǎn)擊“啟動(dòng),進(jìn)展課程學(xué)習(xí),進(jìn)入DS模塊在DS模塊中進(jìn)展學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程構(gòu)造樹;然后,進(jìn)展課程內(nèi)容的學(xué)習(xí)。點(diǎn)擊“前往LMS按鈕,前往到lmm模塊,點(diǎn)擊“退出按鈕,退出系統(tǒng)場(chǎng)景描畫七:戶登錄的lmm模塊,總共登陸24個(gè)用戶。一切用戶都同時(shí)并發(fā)操作 一切用戶都同時(shí)并發(fā)操作,戶點(diǎn)擊“登記的教程中“test課件運(yùn)用自發(fā)測(cè)試工具,目的測(cè)試24個(gè)用戶同時(shí)翻開課件時(shí)效力器性能場(chǎng)景描畫八:登錄的lmm模塊,總共登陸60個(gè)用戶。一切用戶都同時(shí)并發(fā)操作 有用戶都同時(shí)并發(fā)操作,戶點(diǎn)擊“登記的教程中“test課件運(yùn)

15、用自發(fā)測(cè)試工具,目的測(cè)試60個(gè)用戶同時(shí)翻開課件時(shí)效力器性能4運(yùn)用LoadRunner進(jìn)展負(fù)載/壓力測(cè)試4.1錄制根本的用戶腳本創(chuàng)建用戶腳本需求用到VuGen。提示: 運(yùn)轉(zhuǎn)VuGen 最好在1024*768 的分辨率下, 否那么有些工具欄會(huì)看不到。啟動(dòng)Visual User Generator 后, 經(jīng)過(guò)菜單新建一個(gè)用戶腳本, 選擇系統(tǒng)通訊的協(xié)議。這里我們需求測(cè)試的是Web 運(yùn)用,同時(shí)思索到后臺(tái)SQL數(shù)據(jù)庫(kù)所以我們需求選擇Web(/HTML)協(xié)議SQL SERVER協(xié)議,確定后, 進(jìn)入主窗體。經(jīng)過(guò)菜單來(lái)啟動(dòng)錄制腳本的命令。在URL 中添入要測(cè)試的Web 站點(diǎn)地址.。測(cè)試httplms.ah.sp

16、/lms-lmm/loginForm.do選擇要把錄制的腳本放到哪一個(gè)部分, 默許情況下是“Action。這里簡(jiǎn)單闡明一下:VuGen 中的腳本分為三部分:vuser_init、vuser_end 和Action。其中vuser_init 和vuser_end 都只能存在一個(gè), 不能再分割, 而Action 還可以分成無(wú)數(shù)多個(gè)部分 經(jīng)過(guò)點(diǎn)擊New 按鈕, 新建ActionXXX。在錄制需求登陸的系統(tǒng)時(shí), 我們把登陸部分放到vuser_init 中, 把登陸后的操作部分放到Action 中, 把注銷封鎖登陸部分放到vuser_end 中。 假設(shè)需求在登陸操作設(shè)集合點(diǎn), 那么登陸操作也要放到Act

17、ion 中, 由于vuser_init 中不能添加集合點(diǎn) 在其他情況下, 我們只需把操作部分放到Action 中即可。留意: 在反復(fù)執(zhí)行測(cè)試腳本時(shí),vuser_init 和vuser_end 中的內(nèi)容只會(huì)執(zhí)行一次, 反復(fù)執(zhí)行的只是Action 中的部分。點(diǎn)“ 選項(xiàng) 按鈕, 進(jìn)入錄制的設(shè)置窗體, 這里普通情況下不需求改動(dòng)。然后點(diǎn)“OK 后,VuGen 開場(chǎng)錄制腳本。在錄制過(guò)程中, 不要運(yùn)用閱讀器的“ 后退 功能,LoadRunner 支持不太好! 錄制過(guò)程中, 在屏幕上會(huì)有一個(gè)工具條出現(xiàn)。錄制的過(guò)程和WinRunner 有些類似, 不再多引見。錄制完成后, 按下“ 終了錄制 按鈕,VuGen 自

18、動(dòng)生成用戶腳本, 退出錄制過(guò)程。4.2 完善測(cè)試腳本當(dāng)錄制完一個(gè)根本的用戶腳本后, 在正式運(yùn)用前我們還需求完善測(cè)試腳本, 加強(qiáng)腳本的靈敏性。普通情況下, 我們經(jīng)過(guò)以下幾種方法來(lái)完善測(cè)試腳本。插入事務(wù)、插入結(jié)合點(diǎn)、插入注解、參數(shù)化輸入。這里只舉例引見參數(shù)化如何設(shè)置,其它只作簡(jiǎn)單引見。4.2.1 插入事務(wù)事務(wù)Transaction: 為了衡量效力器的性能, 我們需求定義事務(wù)。比如: 我們?cè)谀_本中有一個(gè)數(shù)據(jù)查詢操作, 為了衡量效力器執(zhí)行查詢操作的性能, 我們把這個(gè)操作定義為一個(gè)事務(wù), 這樣在運(yùn)轉(zhuǎn)測(cè)試腳本時(shí),LoadRunner 運(yùn)轉(zhuǎn)到該事務(wù)的開場(chǎng)點(diǎn)時(shí),LoadRunner 就會(huì)開場(chǎng)計(jì)時(shí), 直到運(yùn)轉(zhuǎn)到

19、該事務(wù)的終了點(diǎn), 計(jì)時(shí)終了。這個(gè)事務(wù)的運(yùn)轉(zhuǎn)時(shí)間在結(jié)果中會(huì)有反映。插入事務(wù)操作可以在錄制過(guò)程中進(jìn)展, 也可以在錄制終了后進(jìn)展。LoadRunner 運(yùn)轉(zhuǎn)在腳本中插入不限數(shù)量的事務(wù)。詳細(xì)的操作方法如下: 在需求定義事務(wù)的操作前面, 經(jīng)過(guò)菜單或者工具欄插入。輸入該事務(wù)的稱號(hào)。留意: 事務(wù)的稱號(hào)最好要有意義, 可以清楚的闡明該事務(wù)完成的動(dòng)作。插入事務(wù)的開場(chǎng)點(diǎn)后, 下面需求在需求定義事務(wù)的操作后面插入事務(wù)的“ 終了點(diǎn)。同樣可以經(jīng)過(guò)菜單或者工具欄插入。默許情況下, 事務(wù)的稱號(hào)列出最近的一個(gè)事務(wù)稱號(hào)。普通情況下, 事務(wù)稱號(hào)不用修正。事務(wù)的形狀默許情況下是LR_AUTO。普通情況下, 我們也不需求修正, 除非

20、在手工編寫代碼時(shí), 有能夠需求手動(dòng)設(shè)置事務(wù)的形狀。4.2.2 插入集合點(diǎn)插入集合點(diǎn)是為了衡量在加重負(fù)載的情況下效力器的性能情況。在測(cè)試方案中, 能夠會(huì)要求系統(tǒng)可以接受1000 人同時(shí)提交數(shù)據(jù),在LoadRunner 中可以經(jīng)過(guò)在提交數(shù)據(jù)操作前面參與集合點(diǎn), 這樣當(dāng)虛擬用戶運(yùn)轉(zhuǎn)到提交數(shù)據(jù)的集合點(diǎn)時(shí),LoadRunner 就會(huì)檢查同時(shí)有多少用戶運(yùn)轉(zhuǎn)到集合點(diǎn),假設(shè)不到1000 人,LoadRunner 就會(huì)命令曾經(jīng)到集合點(diǎn)的用戶在此等待, 當(dāng)在集合點(diǎn)等待的用戶到達(dá)1000 人時(shí),LoadRunner 命令1000 人同時(shí)去提交數(shù)據(jù), 從而到達(dá)測(cè)試方案中的需求。留意: 集合點(diǎn)經(jīng)常和事務(wù)結(jié)合起來(lái)運(yùn)用。集

21、合點(diǎn)只能插入到Action 部分,vuser_init 和vuser_end 中不能插入集合點(diǎn)。詳細(xì)的操作方法如下: 在需求插入集合點(diǎn)的前面, 經(jīng)過(guò)菜單或者工具欄操作輸入該集合點(diǎn)的稱號(hào)。留意: 集合點(diǎn)的稱號(hào)最好要有意義, 可以清楚的闡明該集合點(diǎn)完成的動(dòng)作。4.2.3 插入注釋注釋的作用就不多說(shuō)了, 不過(guò)插入注釋最好是在錄制過(guò)程中。詳細(xì)的操作方法如下: 在需求插入注釋的前面, 經(jīng)過(guò)菜單或者工具欄操作4.2.4 參數(shù)化輸入假設(shè)用戶在錄制腳本過(guò)程中, 填寫提交了一些數(shù)據(jù), 比如要添加數(shù)據(jù)庫(kù)記錄。這些操作都被記錄到了腳本中。當(dāng)多個(gè)虛擬用戶運(yùn)轉(zhuǎn)腳本時(shí), 都會(huì)提交一樣的記錄, 這樣不符合實(shí)踐的運(yùn)轉(zhuǎn)情況,

22、而且有能夠引起沖突。為了更加真實(shí)的模擬實(shí)踐環(huán)境, 需求各種各樣的輸入。參數(shù)化輸入是一種不錯(cuò)的方法。用參數(shù)表示用戶的腳本有兩個(gè)優(yōu)點(diǎn): 可以使腳本的長(zhǎng)度變短。 可以運(yùn)用不同的數(shù)值來(lái)測(cè)試他的腳本。例如, 假設(shè)他企圖搜索不同稱號(hào)的圖書, 他僅僅需求寫提交函數(shù)一次。在回放的過(guò)程中, 他可以運(yùn)用不同的參數(shù)值, 而不只搜索一個(gè)特定稱號(hào)的值。參數(shù)化包含以下兩項(xiàng)義務(wù): 在腳本中用參數(shù)取代常量值。 設(shè)置參數(shù)的屬性以及數(shù)據(jù)源。參數(shù)化僅可以用于一個(gè)函數(shù)中的參量。他不能用參數(shù)表示非函數(shù)參數(shù)的字符串。另外, 不是一切的函數(shù)都可以參數(shù)化的。參數(shù)化輸入的講解, 我們采用一個(gè)例子的方式來(lái)進(jìn)展。在本例中我們參數(shù)化用戶的登陸名:先

23、看如下腳本,經(jīng)過(guò)腳本錄制找到用戶登陸部分,如圖框選住登陸名,點(diǎn)鼠標(biāo)右鍵,彈出對(duì)話框,選擇“交換為新參數(shù)彈出對(duì)話框參數(shù)名隨意取,建議取通俗易懂的名字,下面我們重點(diǎn)引見一下參數(shù)的類型。DateTime: 很簡(jiǎn)單, 在需求輸入日期/時(shí)間的地方, 可以用DateTime 類型來(lái)替代。其屬性設(shè)置也很簡(jiǎn)單, 選擇一種格式即可。當(dāng)然也可以定制格式。.Group Name:暫時(shí)不知道何處能用到,但設(shè)置比較簡(jiǎn)單。在實(shí)踐運(yùn)轉(zhuǎn)中,LoadRunner 運(yùn)用該虛擬用戶所在的Vuser Group 來(lái)替代。但是在VuGen 中運(yùn)轉(zhuǎn)時(shí),Group Name 將會(huì)是None .Load Generator Name: 在實(shí)

24、踐運(yùn)轉(zhuǎn)中,LoadRunner 運(yùn)用該虛擬用戶所在Load Generator 的機(jī)器名來(lái)替代。.Iteration Number: 在實(shí)踐運(yùn)轉(zhuǎn)中,LoadRunner 運(yùn)用該測(cè)試腳本當(dāng)前循環(huán)的次數(shù)來(lái)替代。.Random Number: 隨機(jī)數(shù)。很簡(jiǎn)單。在屬性設(shè)置中可以設(shè)置產(chǎn)生隨機(jī)數(shù)的范圍.Unique Number:獨(dú)一的數(shù)。在屬性設(shè)置中可以設(shè)置第一個(gè)數(shù)以及遞增的數(shù)的大小。留意: 運(yùn)用該參數(shù)類型必需留意可以接受的最大數(shù)。例如: 某個(gè)文本框能接受的最大數(shù)為99。當(dāng)運(yùn)用該參數(shù)類型時(shí), 設(shè)置第一個(gè)數(shù)為1, 遞增的數(shù)為1, 但100 個(gè)虛擬用戶同時(shí)運(yùn)轉(zhuǎn)時(shí),第100 個(gè)虛擬用戶輸入的將是100,這樣腳

25、本運(yùn)轉(zhuǎn)將會(huì)出錯(cuò)。留意: 這里說(shuō)的遞增意思是各個(gè)用戶取第一個(gè)值的遞增數(shù), 每個(gè)用戶相鄰的兩次循環(huán)之間的差值為1。舉例闡明: 假設(shè)起始數(shù)為1, 遞增為5, 那么第一個(gè)用戶第一次循環(huán)取值1, 第二次循環(huán)取值2; 第二個(gè)用戶第一次循環(huán)取值為6, 第二次為7; 依次類推。Vuser ID: 設(shè)置比較簡(jiǎn)單。在實(shí)踐運(yùn)轉(zhuǎn)中,LoadRunner 運(yùn)用該虛擬用戶的ID 來(lái)代替,該ID 是由Controller 來(lái)控制的。但是在VuGen 中運(yùn)轉(zhuǎn)時(shí),Vuser ID 將會(huì)是1。File: 需求在屬性設(shè)置中編輯文件,添加內(nèi)容,也可以從現(xiàn)成的數(shù)據(jù)庫(kù)中取數(shù)據(jù) 下面我們將會(huì)引見 User Defined Function

26、: 從用戶開發(fā)的dll 文件提取數(shù)據(jù)。就目前我以為, 這種方式?jīng)]有必要。VuGen 支持C 言語(yǔ)的語(yǔ)法,在VuGen 中重新編寫類似的函數(shù)應(yīng)該不難。上面的例子中, 我們?nèi)‰S機(jī)數(shù)即可。點(diǎn)“Properties . 按鈕, 進(jìn)展屬性設(shè)置窗口添入隨機(jī)數(shù)的取值范圍為1-50, 選擇一種數(shù)據(jù)格式。在“屬性 中有以下幾個(gè)選項(xiàng): Each Occurrence:在運(yùn)轉(zhuǎn)時(shí), 每遇到一次該參數(shù), 便會(huì)取一個(gè)新的值Each iteration:運(yùn)轉(zhuǎn)時(shí), 在每一次循環(huán)中都取一樣的值Once:運(yùn)轉(zhuǎn)時(shí), 在每次循環(huán)中, 該參數(shù)只取一次值這里我們用的是隨機(jī)數(shù), 選擇Each Occurrence 非常適宜。下面我們?cè)僖?/p>

27、用數(shù)據(jù)庫(kù)中的用戶名來(lái)參數(shù)化登陸用戶名??蜻x住登陸名,點(diǎn)鼠標(biāo)右鍵,彈出對(duì)話框,選擇“交換為新參數(shù)彈出對(duì)話框,此時(shí)參數(shù)名輸入:name,參數(shù)類型選擇File,如圖點(diǎn)“屬性按鈕, 出現(xiàn)以下窗口留意: 參數(shù)的文件名不要運(yùn)用con.dat、pm.dat 或者lpt*.dat 等系統(tǒng)安裝名下面我們將會(huì)銜接數(shù)據(jù)庫(kù), 從數(shù)據(jù)表中選擇用戶名。點(diǎn)“數(shù)據(jù)導(dǎo)游 按鈕,顯示如圖運(yùn)用第2 項(xiàng), 選擇“運(yùn)用手動(dòng)指定SQL語(yǔ)句點(diǎn)下一步,出現(xiàn)如圖窗口添入銜接字符串, 點(diǎn)“創(chuàng)建 按鈕,選擇事先配置好的ODBC銜接。在SQL語(yǔ)句里輸入select查詢語(yǔ)句,出現(xiàn)如圖窗口從哪一行開場(chǎng)取值按列稱號(hào)取值提示: 在參數(shù)數(shù)據(jù)顯示區(qū), 最多只能

28、看到100 行, 假設(shè)數(shù)據(jù)超越100 行, 只能點(diǎn)“編輯 按鈕, 進(jìn)入記事本看。“選擇下一行 有以下幾種選擇: Sequential: 按照順序一行行的讀取。每一個(gè)虛擬用戶都會(huì)按照一樣的順序讀取Random: 在每次循環(huán)里隨機(jī)的讀取一個(gè), 但是在循環(huán)中不斷堅(jiān)持不變 Unique : 獨(dú)一的數(shù)。留意: 運(yùn)用該類型必需留意數(shù)據(jù)表有足夠多的數(shù)。比如Controller 中設(shè)定20 個(gè)虛擬用戶進(jìn)展5 次循環(huán), 那么編號(hào)為1 的虛擬用戶取前5 個(gè)數(shù), 編號(hào)為2 的虛擬用戶取6-10 的數(shù), 依次類推, 這樣數(shù)據(jù)表中至少要有100 個(gè)數(shù)據(jù), 否那么Controller 運(yùn)轉(zhuǎn)過(guò)程中會(huì)前往一個(gè)錯(cuò)誤?!鞍淳幪?hào)指

29、選擇列表中的那一列數(shù)據(jù),從左到右分別是1、2、3依次通常用在有關(guān)聯(lián)性的數(shù)據(jù)上面。我們這里取值Sequential 即可。完成設(shè)置封鎖即可4.3 單機(jī)運(yùn)轉(zhuǎn)測(cè)試腳本經(jīng)過(guò)以上的各個(gè)步驟后, 腳本就可以運(yùn)轉(zhuǎn)了。運(yùn)轉(zhuǎn)腳本可以經(jīng)過(guò)菜單或者工具欄來(lái)操作。執(zhí)行“ 運(yùn)轉(zhuǎn) 命令后,VuGen 先編譯腳本, 檢查能否有語(yǔ)法等錯(cuò)誤。假設(shè)有錯(cuò)誤,VuGen 將會(huì)提示錯(cuò)誤。雙擊錯(cuò)誤提示,VuGen 可以定位到出現(xiàn)錯(cuò)誤的那一行。為了驗(yàn)證腳本的正確性, 我們還可以調(diào)試腳本, 比如在腳本中加斷點(diǎn)等, 操作和在VC 中完全一樣, 置信大家誰(shuí)都不會(huì)感到陌生。假設(shè)編譯經(jīng)過(guò), 就會(huì)開場(chǎng)運(yùn)轉(zhuǎn)。然后會(huì)出現(xiàn)運(yùn)轉(zhuǎn)結(jié)果。5實(shí)施測(cè)試5.1 選擇腳

30、本,創(chuàng)建虛擬用戶 啟用“controller彈出如圖窗口修正數(shù)量選擇剛剛錄制并保管好的腳本,添加到方案中,點(diǎn)“確定出現(xiàn)如圖根據(jù)需求修正虛擬用戶數(shù)量,這里我們?nèi) ?00根據(jù)實(shí)現(xiàn)場(chǎng)景設(shè)計(jì),取不同數(shù)字點(diǎn)“編輯方案細(xì)化方案,方案名里選擇方案種類:加壓,緩慢加壓、默許方案或新建立方案。默許方案:同時(shí)加載一切vuser,直到完成加壓:每15秒啟動(dòng)2個(gè)vuser 繼續(xù)時(shí)間5分種緩慢加壓:每2分種啟動(dòng)2個(gè)vuser 繼續(xù)時(shí)間10分種這里我們選擇“加壓 出現(xiàn)如圖單位秒內(nèi)同時(shí)加載幾個(gè)vuser 點(diǎn)“加壓標(biāo)簽設(shè)置加壓方法,點(diǎn)“繼續(xù)時(shí)間標(biāo)簽選擇完成時(shí)間,點(diǎn)“加壓標(biāo)簽選擇退出方法,點(diǎn)“方案開場(chǎng)時(shí)間可以定義時(shí)間后自動(dòng)到點(diǎn)

31、執(zhí)行,并在一個(gè)限定的時(shí)間范圍內(nèi)終了,一切設(shè)置終了后,點(diǎn)“ok前往上一級(jí)窗口,點(diǎn)“開場(chǎng)方案啟動(dòng)運(yùn)轉(zhuǎn),出現(xiàn)如圖窗口Windows資源監(jiān)視窗口翻開可用圖中目錄樹,選擇系統(tǒng)資源找到windows資源5.2 添加windows資源監(jiān)視窗口loadruner默許性能監(jiān)視窗口四個(gè),分別是“運(yùn)轉(zhuǎn)vuser“、事務(wù)呼應(yīng)時(shí)間“、“每秒點(diǎn)擊次數(shù)最后一個(gè)可以根據(jù)用戶本人選擇現(xiàn)實(shí)什么窗口。翻開可用圖中目錄樹,選擇系統(tǒng)資源,找到windows資源雙擊,那么windows資源監(jiān)視窗口便自動(dòng)交換原窗口如上圖。當(dāng)然loadrunner也可以同時(shí)顯示116個(gè)窗口,方法是點(diǎn)右鍵,在彈出菜單中選擇“查看圖選擇顯示的圖數(shù),也可以自定義

32、數(shù)字。5.3 添加windows性能計(jì)數(shù)器鼠標(biāo)選擇windows資源監(jiān)視窗口,點(diǎn)擊右鍵彈出菜單中選擇“ADD Measurements.彈出如圖窗口點(diǎn)“添加把監(jiān)視的效力器ip地址輸入,點(diǎn)確定,如圖假設(shè)可以正常聯(lián)機(jī)到效力器,那么在資源度量中會(huì)顯示全部計(jì)數(shù)器,此時(shí)假設(shè)點(diǎn)“確定那么系統(tǒng)默許全部選中,在監(jiān)視窗口中會(huì)顯示一切性能曲線,無(wú)法單獨(dú)過(guò)濾顯示某條曲線,假設(shè)選中某個(gè)計(jì)數(shù)器后點(diǎn)“添加那么彈出該工程下的其它性能目的,選擇需求的計(jì)數(shù)器后點(diǎn)“添加如圖 此時(shí)要留意,他登陸客戶端也就是他裝有l(wèi)oadrunner機(jī)器的用戶應(yīng)該是管理員身份,同時(shí)還要保證該用戶在被監(jiān)視的效力器上也是管理員身份。這樣選擇雖然監(jiān)視窗口

33、中仍會(huì)顯示一切性能曲線,但是可以經(jīng)過(guò)鼠標(biāo)右鍵彈出菜單,選中他指定的某條曲線單獨(dú)顯示。方法是雙擊監(jiān)視窗口放大顯示,然后右鍵選擇“僅顯示指定圖監(jiān)視窗口還可以相互疊加等操作,功能強(qiáng)大,經(jīng)過(guò)右鍵菜單項(xiàng)選擇擇可以進(jìn)展復(fù)雜顯示操作。常用的還有web程序效力器圖、數(shù)據(jù)庫(kù)效力器資源圖等,添加方法雷同。計(jì)數(shù)器有那些,有什么含義,理想值是多少,可以參見第六章節(jié)。5.4 執(zhí)行腳本此時(shí)設(shè)置終了后,那就簡(jiǎn)單了,點(diǎn)擊“開場(chǎng)方案留意察看吧。點(diǎn)一下,ok!5.4.1 分析結(jié)果 腳本執(zhí)行終了后,loadrunner會(huì)自動(dòng)分析結(jié)果,生成分析結(jié)果圖或表,方法是點(diǎn)導(dǎo)航欄“結(jié)果選現(xiàn),在彈出窗口中選擇“分析結(jié)果6 分析以及監(jiān)視場(chǎng)景在運(yùn)轉(zhuǎn)

34、過(guò)程中, 可以監(jiān)視各個(gè)效力器的運(yùn)轉(zhuǎn)情況DataBase Server、Web Server 等。監(jiān)視場(chǎng)景經(jīng)過(guò)添加性能計(jì)數(shù)器來(lái)實(shí)現(xiàn)。這一章非常的重要, 確定系統(tǒng)瓶頸全靠它了。下面重點(diǎn)講講需求添加那些計(jì)數(shù)器, 以及那些計(jì)數(shù)器代表什么意思。由于Win2000 Professional、Server 以及Advanced Server 提供的計(jì)數(shù)器不完全一樣, 這里我們討論將以Server 為基準(zhǔn)。監(jiān)視場(chǎng)景需求在Run 視圖中設(shè)置然后, 出現(xiàn)添加計(jì)數(shù)器的對(duì)話框其他的操作就和控制面板“ 性能 中添加性能計(jì)數(shù)器的操作一樣, 這里不再詳細(xì)闡明。本章主要闡明一下各個(gè)系統(tǒng)計(jì)數(shù)器的含義 數(shù)據(jù)庫(kù)的計(jì)數(shù)器不做重點(diǎn),

35、只是拿SQL Server2000 作為例子進(jìn)展闡明。由于數(shù)據(jù)庫(kù)各個(gè)版本之間差別比較大, 請(qǐng)參考您運(yùn)用的數(shù)據(jù)庫(kù)系統(tǒng)的協(xié)助 。6.1 Memory相關(guān)內(nèi)存是第一個(gè)監(jiān)視對(duì)象, 確定系統(tǒng)瓶頸的第一個(gè)步驟就是排除內(nèi)存問(wèn)題。內(nèi)存短缺的問(wèn)題能夠會(huì)引起各種各樣的問(wèn)題。Object 對(duì)象CountersDescription 描畫參考值MemoryAvailable MBytes物理內(nèi)存的可用數(shù) 單位 Mbytes。默許情況下IIS5.0 運(yùn)用50%的可用物理內(nèi)存, 作為IIS 的文件緩存file cache。IIS 根本占用 2.5 MB,每個(gè)附加銜接將在此根底上占用 10 KB 左右至少要有10% 的物理

36、MemoryPage/sec Page Faults/sec Pages Input/secPages Input/sec Page Reads/sec Transition Faults/sec 物理內(nèi)存的可用數(shù) 單位 Mbytes。默許情況下IIS5.0 運(yùn)用50%的可用物理內(nèi)存, 作為IIS 的文件緩存file cache。IIS 根本占用 2.5 MB,每個(gè)附加銜接將在此根底上占用 10 KB 左右。至少要有10% 的物理內(nèi)存值當(dāng)處置器向內(nèi)存指定的位置懇求一頁(yè) 能夠是數(shù)據(jù)或代碼 出現(xiàn)錯(cuò)誤時(shí), 這就構(gòu)成一個(gè)Page Fault。假設(shè)該頁(yè)在內(nèi)存的其他位置, 該錯(cuò)誤被稱為軟錯(cuò)誤 用Trans

37、ition Fault/sec 數(shù)器衡量; 假設(shè)該頁(yè)必需從硬盤上重新讀取時(shí), 被稱為硬錯(cuò)誤。許多處置器可以在有大軟錯(cuò)誤的情況下繼續(xù)操作。但是, 硬錯(cuò)誤可以導(dǎo)致明顯的拖延。Page Faults/sec 是處置器每秒鐘處置的錯(cuò)誤頁(yè) 包括軟錯(cuò)誤和硬錯(cuò)誤。Pages Input/sec 是為理處理硬錯(cuò)誤頁(yè), 從硬盤上讀取的頁(yè)數(shù), 而Page Reads/sec 是為理處理硬錯(cuò)誤, 從硬盤讀取的次數(shù)。假設(shè) Page Reads/Sec 比率繼續(xù)堅(jiān)持為 5, 表示能夠內(nèi)存缺乏。Pages/sec 是指為解析硬頁(yè)錯(cuò)誤從磁盤讀取或?qū)懭氪疟P的頁(yè)數(shù)。Page/sec 引薦00-20 假設(shè)效力器沒(méi)有足夠的內(nèi)存處置

38、其任務(wù)負(fù)荷, 此數(shù)值將不斷很高。假設(shè)大于80,表示有問(wèn)題。這些計(jì)數(shù)器的值比較低, 闡明Web效力器呼應(yīng)懇求比較快, 否那么能夠是效力器系統(tǒng)內(nèi)存短缺引起 也能夠是緩存太大, 導(dǎo)致系統(tǒng)內(nèi)存太少。Page Input/sec 的值可以衡量出硬錯(cuò)誤頁(yè)發(fā)生的速率, 通常它的值會(huì)于或者等于Page Reads/sec。Memory Cache BytesMemoryCache Bytes文件系統(tǒng)緩存File System Cache默許情況下認(rèn)情況下為50%的可用物理內(nèi)存。如為50%的可IIS5.0 運(yùn)轉(zhuǎn)內(nèi)存不夠時(shí), 它會(huì)自動(dòng)整理用物理內(nèi)存緩存。需求關(guān)注該計(jì)數(shù)器的趨勢(shì)變化Internet File Cac

39、he Hits %File Cache Hits %是文件緩存命中全部 對(duì)于一個(gè)Information File Cache 緩存需求的比例, 反映了IIS 的文件緩大部分是靜Services Flushes 存設(shè)置的任務(wù)情況。而File Cache Hits 態(tài)網(wǎng)頁(yè)組成Global File Cache Hits 是文件緩存命中的詳細(xì)值,F(xiàn)ile Cache 的網(wǎng)站File Flushes 是自效力器啟動(dòng)之后文件緩存Cache Hits% 刷新次數(shù), 假設(shè)刷新太慢, 會(huì)浪費(fèi)內(nèi)存; 假設(shè)刷新太快, 緩存中的對(duì)象會(huì)太頻繁屬于非常好! 的丟棄生成, 起不到緩存的作用。經(jīng)過(guò)File Cache Hi

40、ts 和File Cache Flushes 可以得到一個(gè)適當(dāng)?shù)乃⑿轮?參考IIS 的設(shè)置ObjectTTL 、MemCacheSize 、MaxCacheFileSizeMemoryPoolPaged BytesPool Nonpaged BytesPool Paged Bytes Pool Nonpaged Bytes 這兩個(gè)計(jì)數(shù)器監(jiān)視效力器上各個(gè)進(jìn)程的分頁(yè)池字節(jié)數(shù)和非分頁(yè)池字節(jié)數(shù)。在訪問(wèn)數(shù)比較固定的情況下, Pool Nonpaged Bytes 是比較定的, 假設(shè)訪問(wèn)數(shù)逐漸添加, 該值會(huì)緩慢的添加ProcessVirtual BytesWorking Set 計(jì)數(shù)器Virtual By

41、tes( 實(shí)Virtual Bytes 數(shù)器監(jiān)視IIS5.0 保管的例inetinfo 、虛地址空間的數(shù)量, 實(shí)例化為inetinfo dllhost) Working Set 實(shí)例進(jìn)程(IIS 運(yùn)轉(zhuǎn)的中心)和Dllhost 進(jìn)程 隔離/ 銜接池的運(yùn)用程序必需的。inetinfo 、dllhost Working Set 計(jì)數(shù)器反映了每個(gè)進(jìn)程使Dllhost#n 進(jìn)程都用的內(nèi)存頁(yè)的數(shù)量。系統(tǒng)的內(nèi)存頁(yè)pool 要添加計(jì)數(shù)器Page 只能由操作系統(tǒng)的中心模塊直接訪問(wèn), 用戶進(jìn)程不能訪問(wèn)。運(yùn)轉(zhuǎn)IIS5.0 的效力器上, 擔(dān)任web 銜接的線程以及它需求的一些對(duì)象都保管在未分頁(yè)的池中nonpaged

42、pool, 比如文件句柄和socket 銜接ProcessPrivate Bytes指這個(gè)處置不能與其他處置共享的、已分配的當(dāng)前字節(jié)數(shù)MemoryCommitted Bytes是指以字節(jié)表示確實(shí)認(rèn)虛擬內(nèi)存。(確認(rèn)內(nèi)存是指為磁盤分頁(yè)文件在磁盤上保管的空間以便在需引薦不超越物理內(nèi)存的75% 要將其寫回磁盤時(shí)運(yùn)用)引薦不超越物理內(nèi)存的75內(nèi)存問(wèn)題主要檢查運(yùn)用程序能否存在內(nèi)存走漏。假設(shè)發(fā)生了內(nèi)存走漏,ProcessPrivate Bytes 計(jì)數(shù)器和ProcessWorking Set 計(jì)數(shù)器的值往往會(huì)升高, 同時(shí)Available Bytes 的值會(huì)降低。內(nèi)存走漏應(yīng)該經(jīng)過(guò)一個(gè)長(zhǎng)時(shí)間的, 用來(lái)研討分析

43、當(dāng)一切內(nèi)存都耗盡時(shí), 運(yùn)用程序反響情況的測(cè)試來(lái)檢驗(yàn)。6.2 Processor相關(guān)Object 對(duì)象CountersDescription 描畫參考值SytemProcessor Queue Length Processor Queue Length 是指處置列隊(duì)中的線程數(shù)。即使在有多個(gè)處置器的計(jì)算機(jī)上處置器時(shí)間也會(huì)有一個(gè)單列隊(duì)。不象磁盤計(jì)數(shù)器, 這個(gè)計(jì)數(shù)器僅計(jì)數(shù)就緒的線程, 而不計(jì)數(shù)運(yùn)轉(zhuǎn)中的線程。假設(shè)處置器列隊(duì)中總是有兩個(gè)以上的線程通常表示處置器堵塞小于2。顯示在由 Web 效力器一切處置器共享的隊(duì)列中等待執(zhí)行的線程數(shù)。處置器瓶頸會(huì)導(dǎo)致該值繼續(xù)大于2Processor%Processor T

44、imeCPU 運(yùn)用率。這是查看處置器飽和情況的最正確計(jì)數(shù)器。顯示一切 CPU 的線程處置時(shí)間。假設(shè)一個(gè)或多個(gè)處置器的該數(shù)值繼續(xù)超越 90%,那么表示此測(cè)試的負(fù)載對(duì)于目前的硬件過(guò)于繁重。為多處置器效力器添加該計(jì)數(shù)器的 0 到 x 個(gè)實(shí)例小于75%。排除內(nèi)存要素, 假設(shè)該計(jì)數(shù)器的值比較大, 而同時(shí)網(wǎng)卡和硬盤的值比較低, 那么可以定CPU 瓶頸SystemContext Switches/secContext Switches/sec 指計(jì)算機(jī)上的一切處置器全都從一個(gè)線程轉(zhuǎn)換到另一個(gè)線程的綜合速率。當(dāng)正在運(yùn)轉(zhuǎn)的線程自動(dòng)放棄處置器時(shí)出現(xiàn)上下文轉(zhuǎn)換, 由一個(gè)有更高優(yōu)先就緒的線程占先或在用戶方式和特權(quán)(內(nèi)

45、核)方式之間轉(zhuǎn)換以運(yùn)用執(zhí)行或分系統(tǒng)效力。它是在計(jì)算機(jī)上的一切處置器上運(yùn)轉(zhuǎn)的一切線程的Thread: Context Switches/sec 的總數(shù)并且用轉(zhuǎn)換數(shù)量衡量。在系統(tǒng)和線程對(duì)象上有上下文轉(zhuǎn)換計(jì)數(shù)器假設(shè)切換次數(shù)到5000*CPU個(gè)數(shù)和10000*CPU 個(gè)數(shù)中, 闡明它忙于切換線程而不是處置ASP 腳本Processo%Privileged Time% Privileged Time 是在特權(quán)方式下處置線程執(zhí)行代碼所花時(shí)間的百分比。當(dāng)調(diào)用 Windows 系統(tǒng)效力時(shí), 此效力經(jīng)常在特權(quán)方式運(yùn)轉(zhuǎn), 以便獲取對(duì)系統(tǒng)專有數(shù)據(jù)的訪問(wèn)。在用戶方式執(zhí)行的線程無(wú)法訪問(wèn)這些數(shù)據(jù)。對(duì)系統(tǒng)的調(diào)用可以是直接的

46、(explicit)或間接的(implicit), 例如頁(yè)面錯(cuò)誤或中斷。不像某些早期的操作系統(tǒng),Windows 除了運(yùn)用用戶和特權(quán)方式的傳統(tǒng)維護(hù)方式之外, 還運(yùn)用途置邊境作為分系統(tǒng)維護(hù)。某些由Windows 為您的運(yùn)用程序所做的操作除了出如今處置的特權(quán)時(shí)間內(nèi), 還能夠在其他子系統(tǒng)處置出現(xiàn)TimeSwitches/sec 實(shí)例化inetinfo 和dllhost假設(shè)他決議要添加線程字節(jié)池的大小,他應(yīng)該監(jiān)視這三個(gè)計(jì)數(shù)器 包括上面的一個(gè)。添加線數(shù)能夠會(huì)添加上下文切換次數(shù), 這樣性能不會(huì)上升反而會(huì)下降。假設(shè)十個(gè)實(shí)例的上下文切換值非常高, 就應(yīng)該減小線程字節(jié)池的大小ProcessorInterrupts

47、/sec %DPC TimeTime 這兩個(gè)計(jì)數(shù)器可以反映處置器用在處置中斷以及推遲處置調(diào)用的時(shí)間。假設(shè)處置器運(yùn)用率超越Interrupts/sec 指處置器每秒鐘接納并維90% 且 硬件中斷的平均值。正常的線程操作在中斷時(shí)懸停。大多數(shù)的系統(tǒng)時(shí)鐘每Interrupt Time 大于隔 10 毫秒中斷處置器一次, 構(gòu)成了間15%, 那么處置隔活動(dòng)的后臺(tái)假設(shè)處置器運(yùn)用率超越90,且Interrupts/sec time大于15那么處置器能夠負(fù)載過(guò)重,并發(fā)生中斷Processor Interrupts/sec %DPC Time 這兩個(gè)計(jì)數(shù)器可以反映處置器用在處置中斷以及推遲處置調(diào)用的時(shí)間。假設(shè)處置

48、器運(yùn)用率超越Interrupts/sec 指處置器每秒鐘接納并維90% 且 硬件中斷的平均值。正常的線程操作在中斷時(shí)懸停。大多數(shù)的系統(tǒng)時(shí)鐘每Interrupt Time 大于隔 10 毫秒中斷處置器一次, 構(gòu)成了間15%, 那么處置隔活動(dòng)的后臺(tái)。器能夠負(fù)荷過(guò)重, 并發(fā)生中斷。判別運(yùn)用程序能否存在處置器瓶頸的方法: 假設(shè)Processor Queue Length 顯示的隊(duì)列長(zhǎng)度堅(jiān)持不變=2 個(gè)并且處置器的利用率%Processor Time 超越90%, 那么很有能夠存在處置器瓶頸。假設(shè)發(fā)現(xiàn)Processor Queue Length 顯示的隊(duì)列長(zhǎng)度超越2, 而處置器的利用率卻不斷很低, 那么

49、或許更應(yīng)該去處理處置器阻塞問(wèn)題, 這里處置器普通不是瓶頸。假設(shè)系統(tǒng)由于運(yùn)用程序代碼效率低下或者系統(tǒng)構(gòu)造設(shè)計(jì)有缺陷而導(dǎo)致大量的上下文切換Context Switches/sec 顯示的上下文切換次數(shù)比較大, 那么就會(huì)占用大量的系統(tǒng)資源。假設(shè)系統(tǒng)的吞吐量降低并且CPU 的運(yùn)用率很高,并且此景象發(fā)生時(shí)切換程度在15000 以上, 那么意味著上下文切換次數(shù)過(guò)高同時(shí)還可以比較Context Switches/sec 和%Privileged Time 來(lái)判別上下文切換能否過(guò)量。假設(shè)后者的值超越40%, 且上下文切換的速率也很高, 那么應(yīng)該檢查為什么會(huì)產(chǎn)生這樣高的上下文切換。6.3 網(wǎng)絡(luò)吞吐量以及帶寬Ob

50、jectCounterDescription參考值Network InterfaceBytes Total/seBytes Total/sec 為發(fā)送和接納字節(jié)的速率, 包括幀字符在內(nèi)。判別網(wǎng)絡(luò)銜接速該計(jì)數(shù)器的值和目前網(wǎng)度能否是瓶頸, 可以用該計(jì)數(shù)器的值和絡(luò)的帶寬相目前網(wǎng)絡(luò)的帶寬比較改計(jì)數(shù)器的值和目前網(wǎng)絡(luò)帶寬相除,結(jié)果應(yīng)該小于50%Web ServicMaximum Maximum ConnectionsMaximum Maximum Connections :“ 最大銜接數(shù) Attempts Total Connection Attempts :“ 銜接嘗試總數(shù) 是從效力啟動(dòng)時(shí)利用 Web

51、效力嘗試銜接的總數(shù)。該計(jì)數(shù)器運(yùn)用于全部所列的實(shí)例。6.4 磁盤相關(guān)Object 對(duì)象 Counters 計(jì)數(shù)器稱號(hào) Description 描畫 參考值ObjectCountersDescription參考值NetworkBytes Total/secBytes Total/sec 為發(fā)送和接納字節(jié)的速Interface 率, 包括幀字符在內(nèi)。判別網(wǎng)絡(luò)銜接速度能否是瓶頸, 可以用該計(jì)數(shù)器的值和目前網(wǎng)絡(luò)的帶寬比較Processo%Processor Time% Privileged TimeCPU 運(yùn)用率該計(jì)數(shù)器對(duì)應(yīng)于處置器執(zhí)行Windows. 2000 內(nèi)核命令 如處置SQL Server I

52、/O 懇求 所用時(shí)間的百分比。假設(shè) Physical Disk 計(jì)數(shù)器的值很高時(shí)該計(jì)數(shù)器的值也不斷很高, 那么思索運(yùn)用速度更快或效率更高的磁盤子系統(tǒng)。PhysicalDisk%Disk Time% Disk Time 指所選磁盤驅(qū)動(dòng)器忙于為讀或?qū)懭霊┣筇峁┬Яλ玫臅r(shí)間的百分比。假設(shè)三個(gè)計(jì)數(shù)器都比較大, 那么硬盤不是瓶頸。假設(shè)只需%Disk Time 比較大, 另外兩個(gè)都比較適中, 硬盤能夠會(huì)是瓶頸。在記錄該計(jì)數(shù)器之前, 請(qǐng)?jiān)?Windows 2000 的命令行窗口中運(yùn)轉(zhuǎn) diskperf -yD 。假設(shè)數(shù)值繼續(xù)超越 80%, 那么能夠內(nèi)存走漏。PhysicalDiskAverageDisk

53、Queue Length指讀取和寫入懇求(為所選磁盤在實(shí)例間隔中列隊(duì)的)的平均數(shù)。PhysicalDiskPhysicalDisk指在此盤上讀取操作的速率PhysicalDiskDisk Writes/sec指在此盤上寫入操作的速率判別磁盤瓶頸的方法是經(jīng)過(guò)以下公式來(lái)計(jì)算: 每磁盤的I/O 數(shù) = 讀次數(shù) + 4 * 寫次數(shù) / 磁盤個(gè)數(shù)假設(shè)計(jì)算出的每磁盤的I/O 數(shù)大于磁盤的處置才干, 那么磁盤存在瓶頸。6.5 Web運(yùn)用程序這里以ASP.NET 開發(fā)的Web 運(yùn)用程序?yàn)槔M(jìn)展闡明。ObjectCountersDescription參考值A(chǔ)SP.NET ApplicationsRequest/

54、Sec Request Executing每秒執(zhí)行的懇求數(shù)。假設(shè)Request/Sec ApplicationsRequest Executing 當(dāng)前執(zhí)行的懇求數(shù)。的值比較小, 他的Web 程序能夠是瓶頸ASP.NETASP.NETRequestWait Time Request Executing Time 最近的懇求在隊(duì)列中等待的毫秒數(shù)。執(zhí)行最近的懇求所用的毫秒數(shù)。Queued 在理想情況下應(yīng)該接近0, Request Queued 等候處置的懇求數(shù)。該計(jì)數(shù)器應(yīng)堅(jiān)持接近 0。超越 IIS 隊(duì)列長(zhǎng)度會(huì)出假設(shè)這兩個(gè)值太大, 那么需求重現(xiàn)“效力器太忙錯(cuò)誤6.6 SQL Server這里針對(duì)SQ

55、L Server2000, 而且只是列出比較關(guān)鍵的幾個(gè)。更加詳細(xì)的信息可以參考SQL Server 的聯(lián)機(jī)文檔。ObjectCountersDescription參考值Processor%Processor timeCPU 運(yùn)用率SQL Server: Logins/sec這是每秒登錄到 SQL Server 的計(jì)數(shù)SQLServer:CacheManageCache Hit Ratio(all instances)顯示在高速緩存中找到數(shù)據(jù)的命中率。假設(shè)數(shù)值繼續(xù)小于 85%, 那么表示內(nèi)存有問(wèn)題。SQL ServerGeneral StatisticsUser Connections顯示當(dāng)前

56、SQL 用戶數(shù)。與 Active Server Pages:Requests/Sec 計(jì)數(shù)器進(jìn)展比較, 可協(xié)助 了解腳本對(duì) SQL Server 的影響程度。假設(shè)差別過(guò)大, 那么表示測(cè)試腳本不能有效地對(duì)SQL Server 進(jìn)展應(yīng)力測(cè)試。SQLServer:LocksLock Waits/sec顯示在當(dāng)前進(jìn)程完成之前強(qiáng)迫其他進(jìn)程等待的每秒鎖定懇求的數(shù)量。假設(shè)該值一直大于 0, 那么表示事務(wù)有問(wèn)題。SQLServer: BuffeManageBuffer Manager Hit Ratio計(jì)數(shù)器值依運(yùn)用程序而定, 但比率最好為 90% 或更高。添加內(nèi)存直到這一數(shù)值繼續(xù)高于 90%, 表示90%

57、以上的數(shù)據(jù)懇求可以從數(shù)據(jù)緩沖區(qū)中獲得所需數(shù)據(jù)。SQLServerSQL StatisticsBatch Requests/sec每秒收的Transact-SQL 命令批數(shù)。這一統(tǒng)計(jì)信息受一切約束 如I/O、用戶數(shù)、高速緩存大小、懇求I/O、用戶數(shù)、高速緩存大小、懇求的復(fù)雜程度等 影響。批懇求數(shù)值高意味著吞吐量很好。SQL Server:Buffer Manager Lazy Writes/sec每秒被緩沖區(qū)管理器的惰性寫入器寫入的緩沖區(qū)數(shù)。惰性寫入器是一個(gè)系統(tǒng)進(jìn)程, 其主要義務(wù)是刷新成批的老化的臟緩沖區(qū) 指包含更改的緩沖區(qū), 這些更改必需寫回磁盤, 才干使該緩沖區(qū)由其它頁(yè)重新使用, 并使之可由

58、用戶進(jìn)程運(yùn)用。惰性寫入器消除了為創(chuàng)建可用緩沖區(qū)而頻繁執(zhí)行檢查點(diǎn)的需求。SQL Server: Buffer Manager Page Reads/sec每秒發(fā)出的物理數(shù)據(jù)庫(kù)頁(yè)讀取數(shù)。這一統(tǒng)計(jì)信息顯示的是在一切數(shù)據(jù)庫(kù)間的物理頁(yè)讀取總數(shù)。由于物理I/O 的開銷大, 可以經(jīng)過(guò)運(yùn)用更大的數(shù)據(jù)高速緩存、智能索引、更高效的查詢或者改動(dòng)數(shù)據(jù)庫(kù)設(shè)計(jì)等方法, 使開銷減到最小。SQL Server:Databases Transactions/sec每秒為數(shù)據(jù)庫(kù)啟動(dòng)的事務(wù)數(shù)這里針對(duì)SQL Server2000, 而且只是列出比較關(guān)鍵的幾個(gè)。更加詳細(xì)的信息可以參考SQL Server 的聯(lián)機(jī)文檔。6.7 Netwo

59、rk Delay假設(shè)要監(jiān)視的兩臺(tái)計(jì)算機(jī)在同一個(gè)局域網(wǎng)絡(luò)內(nèi), 建議不要運(yùn)用Network Delay Monitor。由于在同一局域網(wǎng)內(nèi),Network Delay 會(huì)非常的小, 網(wǎng)絡(luò)監(jiān)視器會(huì)有足夠的時(shí)間在每秒鐘內(nèi)發(fā)送成百上千的懇求, 這樣會(huì)導(dǎo)致源計(jì)算機(jī)source machine 的CPU 和內(nèi)存超負(fù)荷任務(wù)。默許情況下“Enable display of network nodes by DNS names 選擇是沒(méi)有選中的, 由于選中它會(huì)明顯的降低該監(jiān)視器的速度。7 分析實(shí)時(shí)監(jiān)視圖表這一章僅僅引見幾個(gè)最重要的圖表。Q1 事務(wù)呼應(yīng)時(shí)間能否在可接受的時(shí)間內(nèi)? 哪個(gè)事務(wù)用的時(shí)間最長(zhǎng)? 看Trans

60、action Response Time 圖, 可以判別每個(gè)事務(wù)完成用的時(shí)間, 從而可以判別出那個(gè)事務(wù)用的時(shí)間最長(zhǎng), 那些事務(wù)用的時(shí)間超出預(yù)定的可接受時(shí)間。Q2 網(wǎng)絡(luò)帶寬能否足夠? “Throughput圖顯示在場(chǎng)景運(yùn)轉(zhuǎn)期間的每一秒鐘, 從Web Server 上接遭到的數(shù)據(jù)量的值。拿這個(gè)值和網(wǎng)絡(luò)帶寬比較, 可以確定目前的網(wǎng)絡(luò)帶寬能否是瓶頸。假設(shè)該圖的曲線隨著用戶數(shù)的添加, 沒(méi)有隨著添加, 而是呈比較平的直線, 闡明目前的網(wǎng)絡(luò)速度不可以滿足目前的系統(tǒng)流量。Q3 硬件和操作系統(tǒng)能否處置高負(fù)載? “Windows Resources 圖實(shí)時(shí)地顯示了Web Server 系統(tǒng)資源的運(yùn)用情況。利用該圖

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論