4.使用LoadRunner進(jìn)行負(fù)載/壓力測(cè)試... 7 4.3 單機(jī)運(yùn)行測(cè)試腳本... 15 5.2 添加windows資源監(jiān)視窗口... 18 5.3 添加windows性能計(jì)數(shù)器... 18 6.3 網(wǎng)絡(luò)吞吐量以及帶寬... 28 7 分析實(shí)時(shí)監(jiān)視圖表... 32 8.3 計(jì)數(shù)器的問(wèn)題... 33
摘要:本文通過(guò)實(shí)例講解介紹了LoadRunner 工具的使用,介于公司的實(shí)際情況,文中主要是對(duì)工具的基本使用做了詳細(xì)描述,高級(jí)運(yùn)用方面除性能計(jì)數(shù)器與參數(shù)設(shè)置外其它均未涉及,待以后補(bǔ)充。目的是使公司人員根據(jù)該手冊(cè)便可以獨(dú)立運(yùn)用Loadrunner進(jìn)行壓力測(cè)試 主題詞:Loadrunner 工具 壓力測(cè)試 概要介紹 LoadRunner 是一種預(yù)測(cè)系統(tǒng)行為和性能的工業(yè)標(biāo)準(zhǔn)級(jí)負(fù)載測(cè)試工具。通過(guò)以模擬上 千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來(lái)確認(rèn)和查找問(wèn)題,LoadRunner 能夠?qū)φ麄€(gè) 企業(yè)架構(gòu)進(jìn)行測(cè)試。通過(guò)使用LoadRunner , 企業(yè)能最大限度地縮短測(cè)試時(shí)間, 優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。目前企業(yè)的網(wǎng)絡(luò)應(yīng)用環(huán)境都必須支持大量用戶,網(wǎng)絡(luò)體系架構(gòu)中含各類應(yīng)用環(huán)境且由不同供應(yīng)商提供軟件和硬件產(chǎn)品。難以預(yù)知的用戶負(fù)載和愈來(lái)愈復(fù)雜的應(yīng)用環(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īng)用系統(tǒng)的各個(gè)環(huán)節(jié)中對(duì)其測(cè)試應(yīng)用的質(zhì)量, 可靠性和可擴(kuò)展性都有良好的評(píng)價(jià)。LoadRunner 是一種適用于各種體系架構(gòu)的自動(dòng)負(fù)載測(cè)試工具, 它能預(yù)測(cè)系統(tǒng)行為并優(yōu)化系統(tǒng)性能。LoadRunner 的測(cè)試對(duì)象是整個(gè)企業(yè)的系統(tǒng), 它通過(guò)模擬實(shí)際用戶的操作行為和實(shí)行實(shí)時(shí)性能監(jiān)測(cè), 來(lái)幫助您更快的查找和發(fā)現(xiàn)問(wèn)題。此外,LoadRunner 能支持廣范的協(xié)議和技術(shù), 為您的特殊環(huán)境提供特殊的解決方案。 基本步驟使用LoadRunner 完成測(cè)試一般分為四個(gè)步驟: 1)Vvitrual User Generator 創(chuàng)建腳本 2 創(chuàng)建腳本,選擇協(xié)議 2 錄制腳本 2 編輯腳本 2 檢查修改腳本是否有誤 2)中央控制器(Controller)來(lái)調(diào)度虛擬用戶 2 創(chuàng)建Scenario,選擇腳本 2 設(shè)置機(jī)器虛擬用戶數(shù) 2 設(shè)置Schedule 2 如果模擬多機(jī)測(cè)試,設(shè)置Ip Spoofer 3)運(yùn)行腳本 2 分析scenario 4)分析測(cè)試結(jié)果 安裝LoadRunner 中文版LoadRunner 分為Windows 版本和Unix 版本。如果我們的所有測(cè)試環(huán)境基于Windows 平臺(tái), 那么我們只要安裝Windows 版本即可。本章講解的安裝過(guò)程就是LoadRunner7.8中文的Windows 版本的安裝。 系統(tǒng)要求目前部門的測(cè)試機(jī)和工作機(jī)器足可以滿足LoadRunner7.8 的最低要求。不過(guò)要比較好 的運(yùn)行LoadRunner, 內(nèi)存最好在 安裝過(guò)程LoadRunner7.8中文版安裝基本分兩個(gè)步驟:首先安裝LoadRunner7.8英文原版,然后安裝中文語(yǔ)言插件包 LoadRunner7.8英文原版存放位置:\\10.138.149.139\ test tools\LR7.8nt.rar將壓縮文件拷貝解壓到本機(jī)的安裝,過(guò)程比較簡(jiǎn)單要開始安裝LoadRunner,以Administrator 的身份登陸Windows2000 后,運(yùn)行LoadRunner 安裝目錄下Setup.exe 即可進(jìn)入安裝程序。 1. 在“Registration Information” 界面中, 輸入序列號(hào)( 不用改動(dòng), 就是n 個(gè)8) 2. 在安裝類型界面中, 選擇一種安裝類型 下面簡(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ī)都可以使用LoadRunner 的部分或者全部組件。 ●Network Installation and shortcuts 和Network Installation 類似,不同的只是這種類型將把 自己的計(jì)算機(jī)配置成Workstation 來(lái)運(yùn)行LoadRunner。如果選擇了第二項(xiàng), 我們還需要 進(jìn)行2.3 的安裝來(lái)配置Workstation.??紤]到我們是自己學(xué)習(xí)研究學(xué)習(xí), 選擇第一種安裝方法。 3. 在安裝方式界面中, 需要選擇一種安裝方式。建議選擇“ 自定義安裝”, 這樣所有的組件都會(huì)一次安裝。 下面簡(jiǎn)單的對(duì)各個(gè)安裝方式進(jìn)行介紹 ●Typical Installation 安裝比較通用的組件, 包括Controller、Vuser、在線幫助和腳 該選項(xiàng)適合于控制Vusers 的機(jī)器。 ●Load Generator 只安裝運(yùn)行Vusers 產(chǎn)生負(fù)載的組件。該選項(xiàng)適合于只產(chǎn)生負(fù)載, 而不控制Vusers 的機(jī)器。 ●MI Listener 安裝MI Listener 組件, 用來(lái)透過(guò)防火墻來(lái)運(yùn)行Vusers 并且監(jiān)視性能。 ●Custom Installation 自定義安裝, 我們將使用該選項(xiàng), 安裝全部的組件。
4. 在“License Information” 中輸入License Key 后,Next, 繼續(xù) 100個(gè)用戶(無(wú)時(shí)間限制):AEAMAUIK-YAFEKEKJJKEEA-BCJGI 10000個(gè)用戶(有時(shí)間限制):AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB 5. 如果是網(wǎng)絡(luò)安裝,最好把網(wǎng)絡(luò)驅(qū)動(dòng)器映射成本機(jī)的一個(gè)盤符, 安裝LoadRunner 的各級(jí)目錄不要包含中文字符。 6. Next 后進(jìn)入拷貝文件的界面 7. 拷貝文件完成后, 進(jìn)入“User Login Settings” 界面。 ●Allow virtual users to run on this machine without user login 需要在下面輸入域、用 戶名和密碼, 這樣運(yùn)行Load Generator 的機(jī)器會(huì)自動(dòng)登陸到網(wǎng)絡(luò), ●Manual log in to the Load Generator machine 運(yùn)行Vusers 時(shí), 自動(dòng)登陸到網(wǎng)絡(luò), 無(wú)需登陸用戶名和密碼, 這樣Vusers 就會(huì)不用任何干預(yù)自動(dòng)的啟動(dòng)運(yùn)行。推薦 選擇該項(xiàng)。這里選擇第一項(xiàng)和第二項(xiàng)都可以。 8. 重新啟動(dòng), 安裝完成 LoadRunner7.8英文原版存放位置:\\10.138.149.139\test tools\ LoadRunner7.8中文版.rar 將壓縮文件拷貝解壓到本機(jī)的安裝.。過(guò)程比較簡(jiǎn)單要開始安裝以Administrator 的身份登陸Windows2000 后,(注意要退出已經(jīng)運(yùn)行的英文原版)運(yùn)行安裝目錄下Setup.exe 即可進(jìn)入安裝程序,安裝過(guò)程中一切人機(jī)交流窗口多選擇默認(rèn)“下一步”即可 注意:解壓文件存放的文件夾不可起中文名字,安裝目錄最好使用默認(rèn),如果更改則安裝目錄不要使用中文名! 項(xiàng)目背景介紹背景概述“LMS網(wǎng)??荚嚻脚_(tái)”是一個(gè)典型的三層B/S架構(gòu)的MIS系統(tǒng)(客戶端/應(yīng)用服務(wù)器/數(shù)據(jù)庫(kù)管),中間層是業(yè)務(wù)邏輯層,應(yīng)用服務(wù)器處理所有的業(yè)務(wù)邏輯,但應(yīng)用服務(wù)器本身不提供負(fù)載均衡的能力,而是利用開發(fā)工具提供的ORB(對(duì)象請(qǐng)求代理)軟件保證多個(gè)應(yīng)用服務(wù)器間的負(fù)載均衡。本次測(cè)試的目的是:進(jìn)行應(yīng)用服務(wù)器的壓力測(cè)試,找出應(yīng)用服務(wù)器能夠支持的最大客戶端數(shù)。方法是:按照正常業(yè)務(wù)壓力估算值的1~10倍進(jìn)行測(cè)試,考察應(yīng)用服務(wù)器的運(yùn)行情況。 壓力測(cè)試用例
1. 用戶登錄的lmm模塊,總共登陸24個(gè)用戶,所有用戶都同時(shí)并發(fā)操作。 2. 用戶點(diǎn)擊“登記的教程” 3. 用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊 4. 在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。 5. 點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊,點(diǎn)擊“退出”按鈕,退出系統(tǒng)
1. 用戶登陸lmm模塊,總共登錄48個(gè)用戶,每1秒登錄1個(gè)用戶 2. 用戶點(diǎn)擊“已登記教程” 3. 用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊 4. 在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí); 5. 點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊,點(diǎn)擊“退出”按鈕,退出系統(tǒng)
1. 用戶登錄的lmm模塊,總共登陸48個(gè)用戶,所有用戶都同時(shí)并發(fā)操作。 2. 用戶點(diǎn)擊“登記的教程” 3. 用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊 4. 在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。 5. 點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊 點(diǎn)擊“退出”按鈕,退出系統(tǒng)
1. 用戶登錄的lmm模塊,總共登陸48個(gè)用戶,每秒同時(shí)登錄10個(gè)用戶。 2. 用戶點(diǎn)擊“登記的教程” 3. 用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊 4. 在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。 5. 點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊,點(diǎn)擊“退出”按鈕,退出系統(tǒng)
1. 用戶登錄的lmm模塊,總共登陸100個(gè)用戶,所有用戶同時(shí)并發(fā)操作。 2. 用戶點(diǎn)擊“登記的教程” 3. 用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊 4. 在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。 5. 點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
1. 用戶登錄的lmm模塊,總共登陸200個(gè)用戶,所有用戶同時(shí)并發(fā)操作 2. 用戶點(diǎn)擊“登記的教程” 3. 用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊 4. 在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。 5. 點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊,點(diǎn)擊“退出”按鈕,退出系統(tǒng)
1. 戶登錄的lmm模塊,總共登陸24個(gè)用戶。所有用戶都同時(shí)并發(fā)操作 2. 所有用戶都同時(shí)并發(fā)操作,戶點(diǎn)擊“登記的教程”中“test”課件 使用自發(fā)測(cè)試工具,目的測(cè)試24個(gè)用戶同時(shí)打開課件時(shí)服務(wù)器性能
1. 登錄的lmm模塊,總共登陸60個(gè)用戶。所有用戶都同時(shí)并發(fā)操作 2. 有用戶都同時(shí)并發(fā)操作,戶點(diǎn)擊“登記的教程”中“test”課件 使用自發(fā)測(cè)試工具,目的測(cè)試60個(gè)用戶同時(shí)打開課件時(shí)服務(wù)器性能
使用LoadRunner進(jìn)行負(fù)載/壓力測(cè)試錄制基本的用戶腳本創(chuàng)建用戶腳本需要用到VuGen。提示: 運(yùn)行VuGen 最好在1024*768 的分辨率下, 否則有些工具欄會(huì)看不到。 啟動(dòng)Visual User Generator 后, 通過(guò)菜單新建一個(gè)用戶腳本, 選擇系統(tǒng)通訊的協(xié)議。 這里我們需要測(cè)試的是Web 應(yīng)用,同時(shí)考慮到后臺(tái)SQL數(shù)據(jù)庫(kù)所以我們需要選擇Web(HTTP/HTML)協(xié)議+SQL SERVER協(xié)議,確定后, 進(jìn)入主窗體。通過(guò)菜單來(lái)啟動(dòng)錄制腳本的命令。 ●在URL 中添入要測(cè)試的Web 站點(diǎn)地址..。 ●測(cè)試http://lms.ah./lms-lmm/loginForm.do選擇要把錄制的腳本放到哪一個(gè)部分, 默認(rèn)情況下是“Action”。 這里簡(jiǎn)單說(shuō)明一下:VuGen 中的腳本分為三部分:vuser_init、vuser_end 和Action。其 中vuser_init 和vuser_end 都只能存在一個(gè), 不能再分割, 而Action 還可以分成無(wú)數(shù)多個(gè)部分( 通過(guò)點(diǎn)擊New 按鈕, 新建ActionXXX)。在錄制需要登陸的系統(tǒng)時(shí), 我們把登陸部分放到vuser_init 中, 把登陸后的操作部分放到Action 中, 把注銷關(guān)閉登陸部分放到vuser_end 中。( 如果需要在登陸操作設(shè)集合點(diǎn), 那么登陸操作也要放到Action 中, 因?yàn)?font face="Times New Roman">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 開始錄制腳本。在錄制過(guò)程中, 不要使用瀏覽器的“ 后退” 功能,LoadRunner 支持不太好! 錄制過(guò)程中, 在屏幕上會(huì)有一個(gè)工具條出現(xiàn)。錄制的過(guò)程和WinRunner 有些類似, 不再多介紹。錄制完成后, 按下“ 結(jié)束錄制” 按鈕,VuGen 自動(dòng)生成用戶腳本, 退出錄制過(guò)程。 完善測(cè)試腳本當(dāng)錄制完一個(gè)基本的用戶腳本后, 在正式使用前我們還需要完善測(cè)試腳本, 增強(qiáng)腳本的 靈活性。一般情況下, 我們通過(guò)以下幾種方法來(lái)完善測(cè)試腳本。插入事務(wù)、插入結(jié)合點(diǎn)、插入注解、參數(shù)化輸入。這里只舉例介紹參數(shù)化如何設(shè)置,其它只作簡(jiǎn)單介紹。
|
從哪一行開始取值 |
按列名稱取值 |
提醒: 在參數(shù)數(shù)據(jù)顯示區(qū), 最多只能看到100 行, 如果數(shù)據(jù)超過(guò)100 行, 只能點(diǎn)“編輯” 按鈕, 進(jìn)入記事本看。
“選擇下一行 ” 有以下幾種選擇:
●Sequential: 按照順序一行行的讀取。每一個(gè)虛擬用戶都會(huì)按照相同的順序讀取
●Random: 在每次循環(huán)里隨機(jī)的讀取一個(gè), 但是在循環(huán)中一直保持不變
●Unique : 唯一的數(shù)。注意: 使用該類型必須注意數(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)行過(guò)程中會(huì)返回一個(gè)錯(cuò)誤。
“按編號(hào)”指選擇列表中的那一列數(shù)據(jù),從左到右分別是1、2、3依次
通常用在有關(guān)聯(lián)性的數(shù)據(jù)上面。我們這里取值Sequential 即可。完成設(shè)置關(guān)閉即可
經(jīng)過(guò)以上的各個(gè)步驟后, 腳本就可以運(yùn)行了。運(yùn)行腳本可以通過(guò)菜單或者工具欄來(lái)操作。
執(zhí)行“ 運(yùn)行” 命令后,VuGen 先編譯腳本, 檢查是否有語(yǔ)法等錯(cuò)誤。如果有錯(cuò)誤,VuGen
將會(huì)提示錯(cuò)誤。雙擊錯(cuò)誤提示,VuGen 能夠定位到出現(xiàn)錯(cuò)誤的那一行。為了驗(yàn)證腳本的正
確性, 我們還可以調(diào)試腳本, 比如在腳本中加斷點(diǎn)等, 操作和在VC 中完全一樣, 相信大家誰(shuí)都不會(huì)感到陌生。如果編譯通過(guò), 就會(huì)開始運(yùn)行。然后會(huì)出現(xiàn)運(yùn)行結(jié)果。
啟用“controller”彈出如圖窗口
修改數(shù)量 |
選擇剛才錄制并保存好的腳本,添加到方案中,點(diǎn)“確定”出現(xiàn)如圖
根據(jù)需要修改虛擬用戶數(shù)量,這里我們?nèi) ?font face="Times New Roman">100”根據(jù)實(shí)現(xiàn)場(chǎng)景設(shè)計(jì),取不同數(shù)字
點(diǎn)“編輯計(jì)劃”細(xì)化方案,計(jì)劃名里選擇計(jì)劃種類:加壓,緩慢加壓、默認(rèn)計(jì)劃或新建立計(jì)劃。
2 默認(rèn)計(jì)劃:同時(shí)加載所有vuser,直到完成
2 加壓:每15秒啟動(dòng)2個(gè)vuser 持續(xù)時(shí)間5分種
2 緩慢加壓::每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)“方案開始時(shí)間”可以定義時(shí)間后自動(dòng)到點(diǎn)執(zhí)行,并在一個(gè)限定的時(shí)間范圍內(nèi)結(jié)束,所有設(shè)置完畢后,點(diǎn)“ok”返回上一級(jí)窗口,點(diǎn)“開始方案”啟動(dòng)運(yùn)行,出現(xiàn)如圖窗口
Windows資源監(jiān)視窗口 |
打開可用圖中目錄樹,選擇系統(tǒng)資源找到windows資源 |
loadruner默認(rèn)性能監(jiān)視窗口四個(gè),分別是“運(yù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í)顯示1-16個(gè)窗口,方法是點(diǎn)右鍵,在彈出菜單中選擇“查看圖”選擇顯示的圖數(shù),也可以自定義數(shù)字。
鼠標(biāo)選擇windows資源監(jiān)視窗口,點(diǎn)擊右鍵彈出菜單中選擇“ADD Measurements..”彈出如圖窗口
點(diǎn)“添加”把監(jiān)視的服務(wù)器ip地址輸入,點(diǎn)確定,如圖
如果可以正常聯(lián)機(jī)到服務(wù)器,則在資源度量中會(huì)顯示全部計(jì)數(shù)器,此時(shí)如果點(diǎn)“確定”則系統(tǒng)默認(rèn)全部選中,在監(jiān)視窗口中會(huì)顯示所有性能曲線,無(wú)法單獨(dú)過(guò)濾顯示某條曲線,如果選中某個(gè)計(jì)數(shù)器后點(diǎn)“添加”則彈出該項(xiàng)目下的其它性能指標(biāo),選擇需要的計(jì)數(shù)器后點(diǎn)“添加”如圖
此時(shí)要注意,你登陸客戶端(也就是你裝有loadrunner機(jī)器)的用戶應(yīng)該是管理員身份,同時(shí)還要保證該用戶在被監(jiān)視的服務(wù)器上也是管理員身份。這樣選擇雖然監(jiān)視窗口中仍會(huì)顯示所有性能曲線,但是可以通過(guò)鼠標(biāo)右鍵彈出菜單,選中你指定的某條曲線單獨(dú)顯示。方法是雙擊監(jiān)視窗口放大顯示,然后右鍵選擇“僅顯示指定圖”監(jiān)視窗口還可以互相疊加等操作,功能強(qiáng)大,通過(guò)右鍵菜單選擇可以進(jìn)行復(fù)雜顯示操作。常用的還有web程序服務(wù)器圖、數(shù)據(jù)庫(kù)服務(wù)器資源圖等,添加方法雷同。計(jì)數(shù)器有那些,有什么含義,理想值是多少,可以參見第六章節(jié)。
此時(shí)設(shè)置完畢后,那就簡(jiǎn)單了,點(diǎn)擊“開始方案”注意觀察吧。
點(diǎn)一下,ok! |
腳本執(zhí)行完畢后,loadrunner會(huì)自動(dòng)分析結(jié)果,生成分析結(jié)果圖或表,方法是點(diǎn)導(dǎo)航欄“結(jié)果”選現(xiàn),在彈出窗口中選擇“分析結(jié)果”
在運(yùn)行過(guò)程中, 可以監(jiān)視各個(gè)服務(wù)器的運(yùn)行情況(DataBase Server、Web Server 等)。
監(jiān)視場(chǎ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ì)說(shuō)明。本章主要說(shuō)明一下各個(gè)系統(tǒng)計(jì)數(shù)器的含義( 數(shù)據(jù)庫(kù)的計(jì)數(shù)器不做重點(diǎn), 只是拿SQL Server2000 作為例子進(jìn)行說(shuō)明。因?yàn)閿?shù)據(jù)庫(kù)各個(gè)版本之間差異比較大, 請(qǐng)參考您使用的數(shù)據(jù)庫(kù)系統(tǒng)的幫助)。
內(nèi)存是第一個(gè)監(jiān)視對(duì)象, 確定系統(tǒng)瓶頸的第一個(gè)步驟就是排除內(nèi)存問(wèn)題。內(nèi)存短缺的問(wèn)題可能會(huì)引起各種各樣的問(wèn)題。
Object( 對(duì)象) |
Counters |
Description( 描述) |
參考值 |
Memory |
Available MBytes |
物理內(nèi)存的可用數(shù)( 單位 Mbytes)。默認(rèn)情況下IIS5.0 使用50%的可用物理內(nèi)存, 作為IIS 的文件緩存(file cache)。IIS 基本占用 2.5 MB,每個(gè)附加連接將在此基礎(chǔ)上占用 10 KB 左右 |
至少要有10% 的物理 |
Memory |
Page/sec Page Faults/sec Pages Input/sec Pages Input/sec Page Reads/sec Transition Faults/sec
|
物理內(nèi)存的可用數(shù)( 單位 Mbytes)。默認(rèn)情況下IIS5.0 使用50%的可用物理內(nèi)存, 作為IIS 的文件緩存(file cache)。IIS 基本占用 2.5 MB,每個(gè)附加連接將在此基礎(chǔ)上占用 10 KB 左右。至少要有10% 的物理內(nèi)存值當(dāng)處理器向內(nèi)存指定的位置請(qǐng)求一頁(yè)( 可能是數(shù)據(jù)或代碼) 出現(xiàn)錯(cuò)誤時(shí), 這就構(gòu)成一個(gè)Page Fault。如果該頁(yè)在內(nèi)存的其他位置, 該錯(cuò)誤被稱為軟錯(cuò)誤( 用Transition Fault/sec 數(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ù)。如果 Page Reads/Sec 比率持續(xù)保持為 5, 表示可能內(nèi)存不足。Pages/sec 是指為解析硬頁(yè)錯(cuò)誤從磁盤 讀取或?qū)懭氪疟P的頁(yè)數(shù)。 |
Page/sec 推薦00-20( 如果服務(wù)器沒有足夠的內(nèi)存處理其工作負(fù)荷, 此數(shù)值將一直很高。如果大于80,表示有問(wèn)題)。這些計(jì)數(shù)器的值比較低, 說(shuō)明Web服務(wù)器響應(yīng)請(qǐng)求比較快, 否則可能是服務(wù)器系統(tǒng)內(nèi)存短缺引起( 也可能是緩存太大, 導(dǎo)致系統(tǒng)內(nèi)存太少)。Page Input/sec 的值可以衡量出硬錯(cuò)誤頁(yè)發(fā)生的速率, 通常它的值會(huì)于或者等于Page Reads/sec。Memory Cache Bytes |
Memory |
Cache Bytes |
文件系統(tǒng)緩存(File System Cache) |
默默認(rèn)情況下認(rèn)情況下為50%的可用物理內(nèi)存。如為50%的可IIS5.0 運(yùn)行內(nèi)存不夠時(shí), 它會(huì)自動(dòng)整理用物理內(nèi)存緩存。需要關(guān)注該計(jì)數(shù)器的趨勢(shì)變化 |
Internet File Cache Hits % |
|
File Cache Hits %是文件緩存命中全部( 對(duì)于一個(gè)Information File Cache 緩存需求的比例, 反映了IIS 的文件緩大部分是靜Services Flushes 存設(shè)置的工作情況。而File Cache Hits 態(tài)網(wǎng)頁(yè)組成 Global File Cache Hits 是文件緩存命中的具體值,File Cache 的網(wǎng)站)File Flushes 是自服務(wù)器啟動(dòng)之后文件緩存Cache Hits% 刷新次數(shù), 如果刷新太慢, 會(huì)浪費(fèi)內(nèi)存; 如果刷新太快, 緩存中的對(duì)象會(huì)太頻繁屬于非常好! 的丟棄生成, 起不到緩存的作用。通過(guò)File Cache Hits 和File Cache Flushes 可以得到一個(gè)適當(dāng)?shù)乃⑿轮担?font face="Times New Roman"> 參考IIS 的設(shè)置ObjectTTL 、MemCacheSize 、MaxCacheFileSize) |
|
|
|
|
|
Memory |
PoolPaged BytesPool Nonpaged Bytes |
Pool Paged Bytes Pool Nonpaged Bytes 這兩個(gè)計(jì)數(shù)器監(jiān)視服務(wù)器上各個(gè)進(jìn)程的分頁(yè)池字節(jié)數(shù)和非分頁(yè)池字節(jié)數(shù)。 |
在訪問(wèn)數(shù)比較固定的情況下, Pool Nonpaged Bytes 是比較定的, 如果訪問(wèn)數(shù)逐步增加, 該值會(huì)緩慢的增加 |
Process |
Virtual Bytes Working Set 計(jì)數(shù)器 |
Virtual Bytes( 實(shí)Virtual Bytes 數(shù)器監(jiān)視IIS5.0 保留的例inetinfo 、虛地址空間的數(shù)量, 實(shí)例化為inetinfo dllhost) Working Set( 實(shí)例進(jìn)程(IIS 運(yùn)行的核心)和Dllhost 進(jìn)程( 隔離/ 連接池的應(yīng)用程序必需的)。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)行IIS5.0 的服務(wù)器上, 負(fù)責(zé)web 連接的線程以及它需要的一些對(duì)象都保存在未分頁(yè)的池中(nonpaged pool), 比如文件句柄和socket 連接 |
|
Process |
Private Bytes |
指這個(gè)處理不能與其他處理共享的、已分配的當(dāng)前字節(jié)數(shù) |
|
Memory |
Committed Bytes |
是指以字節(jié)表示的確認(rèn)虛擬內(nèi)存。(確認(rèn)內(nèi)存是指為磁盤分 頁(yè)文件在磁盤上保留的空間以便在需推薦不超過(guò)物理內(nèi)存的75% 要將其寫回磁盤時(shí)使用) |
推薦部超過(guò)物理內(nèi)存的75% |
|
|
|
|
內(nèi)存問(wèn)題主要檢查應(yīng)用程序是否存在內(nèi)存泄漏。如果發(fā)生了內(nèi)存泄漏,Process\Private Bytes 計(jì)數(shù)器和Process\Working Set 計(jì)數(shù)器的值往往會(huì)升高, 同時(shí)Available Bytes 的值會(huì)降低。內(nèi)存泄漏應(yīng)該通過(guò)一個(gè)長(zhǎng)時(shí)間的, 用來(lái)研究分析當(dāng)所有內(nèi)存都耗盡時(shí), 應(yīng)用程序反應(yīng)情況的測(cè)試來(lái)檢驗(yàn)。
Object( 對(duì)象) |
Counters |
Description( 描述) |
參考值 |
Sytem |
Processor 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)行中的線程。如果處理器列隊(duì)中總是有兩個(gè)以上的線程通常表示處理器堵塞 |
小于2。顯示在由 Web 服務(wù)器所有處理器共享的隊(duì)列中等待執(zhí)行的線程數(shù)。處理器瓶頸會(huì)導(dǎo)致該值持續(xù)大于2 |
Processor |
%Processor Time |
CPU 使用率。這是查看處理器飽和狀況的最佳計(jì)數(shù)器。顯示所有 CPU 的線程處理時(shí)間。如果一個(gè)或多個(gè)處理器的該數(shù)值持續(xù)超過(guò) 90%,則表示此測(cè)試的負(fù) 載對(duì)于目前的硬件過(guò)于沉重。為多處理器服務(wù)器添加該計(jì)數(shù)器的 0 到 x 個(gè)實(shí)例 |
小于75%。排除內(nèi)存因素, 如果該計(jì)數(shù)器的值比較大, 而同時(shí)網(wǎng)卡和硬盤的值比較低, 那么可以定CPU 瓶頸 |
System |
Context Switches/sec |
Context Switches/sec 指計(jì)算機(jī)上的所有處理器全都從一個(gè)線程轉(zhuǎn)換到另一個(gè)線程的綜合速率。當(dāng)正在運(yùn)行的線程自動(dòng)放棄處理器時(shí)出現(xiàn)上下文轉(zhuǎn)換, 由一個(gè)有更高優(yōu)先就緒的線程占先或在用戶模式和特權(quán)(內(nèi)核)模式之間轉(zhuǎn)換以使用執(zhí)行或分系統(tǒng)服務(wù)。它是在計(jì)算機(jī)上的所有處理器上運(yùn)行的所有線程的Thread: Context Switches/sec 的總數(shù)并且用轉(zhuǎn)換數(shù)量衡量。在系統(tǒng)和線程對(duì)象上有上下文轉(zhuǎn)換計(jì)數(shù)器 |
如果切換次數(shù)到5000*CPU個(gè)數(shù)和10000*CPU 個(gè)數(shù)中, 說(shuō)明它忙于切換線程而不是 處理ASP 腳本 |
Processo |
%Privileged Time |
% Privileged Time 是在特權(quán)模式下處理線程執(zhí)行代碼所花時(shí)間的百分比。當(dāng)調(diào)用 Windows 系統(tǒng)服務(wù)時(shí), 此服務(wù)經(jīng)常在特權(quán)模式運(yùn)行, 以便獲取對(duì)系統(tǒng)專有數(shù)據(jù)的訪問(wèn)。在用戶模式執(zhí)行的線程無(wú)法訪問(wèn)這些數(shù)據(jù)。對(duì)系統(tǒng)的調(diào)用可以是直接的(explicit)或間接的(implicit), 例如頁(yè)面錯(cuò)誤或中斷。不像某些早期的操作系統(tǒng),Windows 除了使用用戶和特權(quán)模式的傳統(tǒng)保護(hù)模式之外, 還使用處理邊界作為分系統(tǒng)保護(hù)。某些由Windows 為您的應(yīng)用程序所做的操作除了出現(xiàn)在處理的特權(quán)時(shí)間內(nèi), 還可能在其他子系統(tǒng)處理出現(xiàn) |
|
Time |
Switches/sec ( 實(shí)例化inetinfo 和dllhost |
如果你決定要增加線程字節(jié)池的大小,你應(yīng)該監(jiān)視這三個(gè)計(jì)數(shù)器( 包括上面的一個(gè))。增加線數(shù)可能會(huì)增加上下文切換次數(shù), 這樣性能不會(huì)上升反而會(huì)下降。如果十個(gè)實(shí)例的上下文切換值非常高, 就應(yīng)該減小線程字節(jié)池的大小 |
|
Processor |
Interrupts/sec %DPC Time |
Time 這兩個(gè)計(jì)數(shù)器能夠反映處理器用在處理中斷以及推遲處理調(diào)用的時(shí)間。如果處理器使用率超過(guò)Interrupts/sec 指處理器每秒鐘接收并維90% 且 硬件中斷的平均值。正常的線程操作在中斷時(shí)懸停。大多數(shù)的系統(tǒng)時(shí)鐘每Interrupt Time 大于隔 10 毫秒中斷處理器一次, 形成了間15%, 則處理隔活動(dòng)的后臺(tái) |
如果處理器使用率超過(guò)90%,且Interrupts/sec time大于15%則處理器可能負(fù)載過(guò)重,并發(fā)生中斷 |
Processor Interrupts/sec %DPC Time 這兩個(gè)計(jì)數(shù)器能夠反映處理器用在處理中斷以及推遲處理調(diào)用的時(shí)間。如果處理器使用率超過(guò)Interrupts/sec 指處理器每秒鐘接收并維90% 且 硬件中斷的平均值。正常的線程操作在中斷時(shí)懸停。大多數(shù)的系統(tǒng)時(shí)鐘每Interrupt Time 大于隔 10 毫秒中斷處理器一次, 形成了間15%, 則處理隔活動(dòng)的后臺(tái)。器可能負(fù)荷過(guò)重, 并發(fā)生中斷。判斷應(yīng)用程序是否存在處理器瓶頸的方法: 如果Processor Queue Length 顯示的隊(duì)列長(zhǎng)度保持不變(>=2) 個(gè)并且處理器的利用率%Processor Time 超過(guò)90%, 那么很有可能存在處理器瓶頸。
如果發(fā)現(xiàn)Processor Queue Length 顯示的隊(duì)列長(zhǎng)度超過(guò)2, 而處理器的利用率卻一直很
低, 那么或許更應(yīng)該去解決處理器阻塞問(wèn)題, 這里處理器一般不是瓶頸。如果系統(tǒng)由于應(yīng)用程序代碼效率低下或者系統(tǒng)結(jié)構(gòu)設(shè)計(jì)有缺陷而導(dǎo)致大量的上下文切換(Context Switches/sec 顯示的上下文切換次數(shù)比較大), 那么就會(huì)占用大量的系統(tǒng)資源。如果系統(tǒng)的吞吐量降低并且CPU 的使用率很高,并且此現(xiàn)象發(fā)生時(shí)切換水平在15000 以上, 那么意味著上下文切換次數(shù)過(guò)高同時(shí)還可以比較Context Switches/sec 和%Privileged Time 來(lái)判斷上下文切換是否過(guò)量。如果后者的值超過(guò)40%, 且上下文切換的速率也很高, 那么應(yīng)該檢查為什么會(huì)產(chǎn)生這樣高的上下文切換。
Object |
Counter |
Description |
參考值 |
Network Interface |
Bytes Total/se |
Bytes 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 Servic |
Maximum Maximum Connections |
Maximum Maximum Connections :“ 最大連接數(shù)” Attempts Total Connection Attempts :“ 連接嘗試總數(shù)” 是從服務(wù)啟動(dòng)時(shí)利用 Web 服務(wù)嘗試連接的總數(shù)。該計(jì)數(shù)器應(yīng)用于全部所列的實(shí)例。
|
|
Object( 對(duì)象) Counters( 計(jì)數(shù)器名稱) Description( 描述) 參考值
Object |
Counters |
Description |
參考值 |
Network |
Bytes Total/sec |
Bytes Total/sec 為發(fā)送和接收字節(jié)的速Interface 率, 包括幀字符在內(nèi)。判斷網(wǎng)絡(luò)連接速度是否是瓶頸, 可以用該計(jì)數(shù)器的值和目前網(wǎng)絡(luò)的帶寬比較
|
|
Processo |
%Processor Time % Privileged Time |
CPU 使用率該計(jì)數(shù)器對(duì)應(yīng)于處理器執(zhí)行Windows. 2000 內(nèi)核命令( 如處理SQL Server I/O 請(qǐng)求) 所用時(shí)間的百分比。如果 Physical Disk 計(jì)數(shù)器的值很高時(shí)該計(jì)數(shù)器的值也一直很高, 則考慮使用速度更快或效率更高的磁盤子系統(tǒng)。
|
|
PhysicalDisk |
%Disk Time |
% Disk Time 指所選磁盤驅(qū)動(dòng)器忙于為讀或?qū)懭胝?qǐng)求提供服務(wù)所用的時(shí)間的百分比。如果三個(gè)計(jì)數(shù)器都比較大, 那 么硬盤不是瓶頸。如果只有%Disk Time 比較大, 另外兩個(gè)都比較適中, 硬盤可能會(huì)是瓶頸。在記錄該計(jì)數(shù)器之前, 請(qǐng) 在 Windows 2000 的命令行窗口中運(yùn)行 diskperf -yD 。若數(shù)值持續(xù)超過(guò) 80%, 則可能內(nèi)存泄漏。 |
|
PhysicalDisk |
AverageDisk Queue Length |
指讀取和寫入請(qǐng)求(為所選磁盤在實(shí)例間隔中列隊(duì)的)的平均數(shù)。
|
|
PhysicalDisk |
PhysicalDisk |
指在此盤上讀取操作的速率 |
|
PhysicalDisk |
Disk Writes/sec |
指在此盤上寫入操作的速率 |
|
判斷磁盤瓶頸的方法是通過(guò)以下公式來(lái)計(jì)算:
每磁盤的I/O 數(shù) = [讀次數(shù) + (4 * 寫次數(shù))] / 磁盤個(gè)數(shù)
如果計(jì)算出的每磁盤的I/O 數(shù)大于磁盤的處理能力, 那么磁盤存在瓶頸。
這里以ASP.NET 開發(fā)的Web 應(yīng)用程序?yàn)槔M(jìn)行說(shuō)明。
Object |
Counters |
Description |
參考值 |
ASP.NET Applications |
Request/Sec Request Executing |
每秒執(zhí)行的請(qǐng)求數(shù)。 |
如果Request/Sec ApplicationsRequest Executing 當(dāng)前執(zhí)行的請(qǐng)求數(shù)。的值比較小, 你 的Web 程序可能 是瓶頸
|
ASP.NET |
ASP.NETRequestWait Time Request Executing Time
|
最近的請(qǐng)求在隊(duì)列中等待的毫秒數(shù)。執(zhí)行最近的請(qǐng)求所用的毫秒數(shù)。Queued 在理想狀況下應(yīng)該接近0, Request Queued 等候處理的請(qǐng)求數(shù)。該計(jì)數(shù)器應(yīng)保持接近 0。超過(guò) IIS 隊(duì)列長(zhǎng)度會(huì)出如果這兩個(gè)值太大, 那么需要重現(xiàn)“服務(wù)器太忙”錯(cuò)誤 |
|
|
|
|
|
|
|
|
|
這里針對(duì)SQL Server2000, 而且只是列出比較關(guān)鍵的幾個(gè)。更加詳細(xì)的信息可以參考SQL Server 的聯(lián)機(jī)文檔。
Object( |
Counters |
Description |
參考值 |
Processor |
%Processor time |
CPU 使用率 |
|
SQL Server: Logins/sec |
這是每秒登錄到 SQL Server 的計(jì)數(shù) |
|
|
SQLServer:CacheManage |
Cache Hit Ratio (all instances) |
顯示在高速緩存中找到數(shù)據(jù)的命中率。如果數(shù)值持續(xù)小于 85%, 則表 示內(nèi)存有問(wèn)題。
|
|
SQL Server General Statistics |
User Connections |
顯示當(dāng)前 SQL 用戶數(shù)。與 Active Server Pages:Requests/Sec 計(jì)數(shù)器 進(jìn)行比較, 可幫助了解腳本對(duì) SQL Server 的影響程度。如果差別過(guò)大, 則表示測(cè)試腳本不能有效地對(duì)SQL Server 進(jìn)行應(yīng)力測(cè)試。
|
|
SQLServer:Locks |
Lock Waits/sec |
顯示在當(dāng)前進(jìn)程完成之前強(qiáng)制其他進(jìn)程等待的每秒鎖定請(qǐng)求的數(shù)量。如果該值始終大于 0, 則表示事務(wù)有問(wèn)題。
|
|
SQLServer: BuffeManage |
Buffer Manager Hit Ratio |
計(jì)數(shù)器值依應(yīng)用程序而定, 但比率最好為 90% 或更高。增加內(nèi)存直到這一數(shù)值持續(xù)高于 90%, 表示90% 以上的數(shù)據(jù)請(qǐng)求可以從數(shù)據(jù)緩沖區(qū)中獲得所需數(shù)據(jù)。
|
|
SQLServer SQL Statistics |
Batch Requests/sec |
每秒收的Transact-SQL 命令批數(shù)。這一統(tǒng)計(jì)信息受所有約束( 如I/O、用戶數(shù)、高速緩存大小、請(qǐng)求I/O、用戶數(shù)、高速緩存大小、請(qǐng)求的復(fù)雜程度等) 影響。批請(qǐng)求數(shù)值 高意味著吞吐量很好。
|
|
SQL Server: Buffer Manager
|
Lazy Writes/sec |
每秒被緩沖區(qū)管理器的惰性寫入器寫入的緩沖區(qū)數(shù)。惰性寫入器是一 個(gè)系統(tǒng)進(jìn)程, 其主要任務(wù)是刷新成批的老化的臟緩沖區(qū)( 指包含更改 的緩沖區(qū), 這些更改必須寫回磁盤, 才能使該緩沖區(qū)由其它頁(yè)重新使 用), 并使之可由用戶進(jì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 的開銷大, 可以通過(guò)使用更大 的數(shù)據(jù)高速緩存、智能索引、更高效的查詢或者改變數(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ī)文檔。
如果要監(jiān)視的兩臺(tái)計(jì)算機(jī)在同一個(gè)局域網(wǎng)絡(luò)內(nèi), 建議不要使用Network Delay Monitor。
因?yàn)樵谕痪钟蚓W(wǎng)內(nèi),Network Delay 會(huì)非常的小, 網(wǎng)絡(luò)監(jiān)視器會(huì)有足夠的時(shí)間在每秒鐘內(nèi)發(fā)送成百上千的請(qǐng)求, 這樣會(huì)導(dǎo)致源計(jì)算機(jī)(source machine) 的CPU 和內(nèi)存超負(fù)荷工作。
默認(rèn)情況下“Enable display of network nodes by DNS names” 選擇是沒有選中的, 因?yàn)?/font>
選中它會(huì)明顯的降低該監(jiān)視器的速度。
這一章僅僅介紹幾個(gè)最重要的圖表。
Q1 事務(wù)響應(yīng)時(shí)間是否在可接受的時(shí)間內(nèi)? 哪個(gè)事務(wù)用的時(shí)間最長(zhǎng)?
看Transaction Response Time 圖, 可以判斷每個(gè)事務(wù)完成用的時(shí)間, 從而可以判斷出那個(gè)事務(wù)用的時(shí)間最長(zhǎng), 那些事務(wù)用的時(shí)間超出預(yù)定的可接受時(shí)間。
Q2 網(wǎng)絡(luò)帶寬是否足夠?
“Throughput”圖顯示在場(chǎng)景運(yùn)行期間的每一秒鐘, 從Web Server 上接受到的數(shù)據(jù)量的值。
拿這個(gè)值和網(wǎng)絡(luò)帶寬比較, 可以確定目前的網(wǎng)絡(luò)帶寬是否是瓶頸。
如果該圖的曲線隨著用戶數(shù)的增加, 沒有隨著增加, 而是呈比較平的直線, 說(shuō)明目前的
網(wǎng)絡(luò)速度不能夠滿足目前的系統(tǒng)流量。
Q3 硬件和操作系統(tǒng)能否處理高負(fù)載?
“Windows Resources” 圖實(shí)時(shí)地顯示了Web Server 系統(tǒng)資源的使用情況。利用該圖提供的數(shù)據(jù), 可以把瓶頸定位到特定機(jī)器的某個(gè)部件。
在使用VuGen 中經(jīng)常會(huì)遇到的問(wèn)題。
在使用Controller 中經(jīng)常會(huì)遇到的問(wèn)題。
1. 在添加完Load Generators 機(jī)器時(shí), 連接老是失??; 添加的機(jī)器明明已經(jīng)安裝了
loadrunner, 并且網(wǎng)絡(luò)通訊正常。
解決方法: 在安裝loadrunner 的第七步驟, 應(yīng)該選擇第2 項(xiàng), 如果選擇了第一項(xiàng),
就會(huì)有這種問(wèn)題。重新安裝一下即可。
2. 在VuGen 中運(yùn)行良好的腳本, 到Controller 中運(yùn)行卻出問(wèn)題。
這種問(wèn)題可能會(huì)遇到。為了確定問(wèn)題出在Controller 中的場(chǎng)景,而不是腳本的問(wèn)題,
你應(yīng)該在所有的Load Generators 機(jī)器上使用VuGen 運(yùn)行測(cè)試腳本, 確保都能夠運(yùn)
行正確。因?yàn)?font face="Times New Roman">VuGen 和Controller 運(yùn)行的機(jī)制不一樣。在VuGen 中運(yùn)行時(shí)使用的
是完整的瀏覽器, 而在Controller 中運(yùn)行時(shí)使用的只是瀏覽器的基本的部分。
在使用性能計(jì)數(shù)器中經(jīng)常會(huì)遇到的問(wèn)題。
1. 添加了Windows Resources 計(jì)數(shù)器后, 卻看不到實(shí)時(shí)的數(shù)據(jù)。
解決方法: 要得到監(jiān)視的數(shù)據(jù), 必須要在被監(jiān)視的服務(wù)器(Web Server) 上獲得管
理員權(quán)限。最簡(jiǎn)單的方法是在“ 網(wǎng)絡(luò)鄰居”中以administrator 身份登陸Web Server。
當(dāng)然使用下面的控制臺(tái)命令也可以:net use \\< 機(jī)器名> 然后登陸用戶名和密碼即
可。(登陸的用戶名必須具有管理員權(quán)限)
2. 添加了一些默認(rèn)的性能計(jì)數(shù)器后, 出現(xiàn)了錯(cuò)誤。
解決方法: 可能是一些LoadRunner 默認(rèn)的計(jì)數(shù)器在WebServer 上已經(jīng)不存在的原
因, 尤其是數(shù)據(jù)庫(kù)的計(jì)數(shù)器方面。簡(jiǎn)單的解決方法, 就是刪除有問(wèn)題的計(jì)數(shù)器, 添
加比較接近的計(jì)數(shù)器( 可能需要參考Windows 幫助或者數(shù)據(jù)庫(kù)的幫助)
根據(jù)不同的場(chǎng)景設(shè)計(jì),配置腳本后進(jìn)行測(cè)試得到如下結(jié)果
測(cè)試環(huán)境
LMM:
CPU:4x2.7G RAM:4G
Websphere 5.0 + IBM Http Server
線程池:100
JDBC連接池:100
會(huì)話超時(shí):30分鐘
DS:
CPU:4x2.2 RAM:4G
Websphere 5.0 + IBM Http Server
線程池:100
JDBC連接池:100
會(huì)話超時(shí):30分鐘
DB&LDAP:
CPU:2x2.2G RAM:4G
Oralce 8.1.7 + LDAP
測(cè)試工具:Load Runner 7.8
用戶數(shù)據(jù):用戶名test1 – test100; 口令與用戶名相同。
測(cè)試用例1
測(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)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM與DS模塊CPU平均利用率在10%以下。LMM服務(wù)器CPU利用率峰值為20%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為100%(持續(xù)時(shí)間為7秒),其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶平均操作響應(yīng)時(shí)間不超過(guò)5秒,所有交易成功。
測(cè)試用例2
測(cè)試場(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)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí);
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM與DS模塊CPU平均利用率在5%以下。LMM服務(wù)器CPU利用率峰值為10%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為8%,其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶操作響應(yīng)時(shí)間不超過(guò)3秒,所有交易成功。
測(cè)試用例3
測(cè)試場(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)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM與DS模塊CPU平均利用率在20%以下。LMM服務(wù)器CPU利用率峰值為40%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為100%(持續(xù)時(shí)間為10秒),其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶平均操作響應(yīng)時(shí)間不超過(guò)10秒,所有交易成功。
測(cè)試用例4
測(cè)試場(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)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM與DS模塊CPU平均利用率在10%以下。LMM服務(wù)器CPU利用率峰值為10%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為100%(持續(xù)時(shí)間為2秒),其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶平均操作響應(yīng)時(shí)間不超過(guò)5秒,所有交易成功。
測(cè)試用例5
測(cè)試場(chǎng)景描述
用戶登錄的lmm模塊,總共登錄100個(gè)用戶,每1秒登錄一個(gè)用戶。
用戶點(diǎn)擊“登記的教程”
用戶點(diǎn)擊“啟動(dòng)”,進(jìn)行課程學(xué)習(xí),進(jìn)入DS模塊
在DS模塊中進(jìn)行學(xué)習(xí),過(guò)程包括:首先,點(diǎn)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM與DS模塊CPU平均利用率在20%以下。LMM服務(wù)器CPU利用率峰值為10%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為100%(持續(xù)時(shí)間為2’20分鐘),其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶最大操作響應(yīng)時(shí)間30秒,所有交易成功。
測(cè)試用例6
測(cè)試場(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)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM與DS模塊CPU平均利用率在20%以下。LMM服務(wù)器CPU利用率峰值為40%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為100%(持續(xù)時(shí)間為3分鐘),其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶超時(shí)1個(gè)。
測(cè)試用例7
測(cè)試場(chǎng)景描述
用戶登錄的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)擊一次課程結(jié)構(gòu)樹;然后,進(jìn)行課程內(nèi)容的學(xué)習(xí)。
點(diǎn)擊“返回LMS” 按鈕,返回到lmm模塊
點(diǎn)擊“退出”按鈕,退出系統(tǒng)
測(cè)試結(jié)果
LMM CPU平均利用率在20%以下。LMM服務(wù)器CPU利用率峰值為40%,其階段為LMM處理多個(gè)用戶同時(shí)的登錄請(qǐng)求與點(diǎn)擊“已登記教程”的學(xué)習(xí)課程查詢。DS服務(wù)器CPU利用率峰值為100%(持續(xù)時(shí)間為5分鐘),其階段為DS處理多個(gè)用戶單一登錄驗(yàn)證和同時(shí)對(duì)課程結(jié)構(gòu)樹查詢。用戶超時(shí)108個(gè)。
LoadRunner中文使用手冊(cè)(完全版) ---作者:huior
LoadRunner 7.8 聯(lián)機(jī)幫助
|
來(lái)自: 小豬窩969 > 《性能測(cè)試》