多層散布式系統(tǒng)的瓶頸檢測(cè)方式_第1頁(yè)
多層散布式系統(tǒng)的瓶頸檢測(cè)方式_第2頁(yè)
多層散布式系統(tǒng)的瓶頸檢測(cè)方式_第3頁(yè)
多層散布式系統(tǒng)的瓶頸檢測(cè)方式_第4頁(yè)
多層散布式系統(tǒng)的瓶頸檢測(cè)方式_第5頁(yè)
已閱讀5頁(yè),還剩14頁(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、第1章多層散布式系統(tǒng)的瓶頸檢測(cè)方式概述系統(tǒng)性能指標(biāo)可分為系統(tǒng)級(jí)性能指標(biāo)(CPU內(nèi)存和網(wǎng)絡(luò)等利用率)和應(yīng)用程序級(jí)性能指標(biāo)(平均反映時(shí)刻SIRT和吞吐量SIPS等)兩大部份。所有的這些系統(tǒng)資源都可能致使系統(tǒng)知足不了用戶SLO的中意度,系統(tǒng)分析員和治理員的職責(zé)是監(jiān)控和分析大量的系統(tǒng)性能指標(biāo),分析瓶頸產(chǎn)生的緣故,并最終通過(guò)添加正確的硬件以達(dá)到提高系統(tǒng)性能的目的?,F(xiàn)在,對(duì)多層架構(gòu)系統(tǒng)的瓶頸檢測(cè)乃至比開(kāi)發(fā)系統(tǒng)本身還重要,也是實(shí)現(xiàn)系統(tǒng)能力計(jì)劃的重要一步。本章將研究多層散布式架構(gòu)系統(tǒng)的瓶頸檢測(cè)方式,其組織結(jié)構(gòu)如下:第2節(jié)描述瓶頸檢測(cè)方式;第3節(jié)對(duì)第2節(jié)提出的瓶頸檢測(cè)方式進(jìn)行實(shí)驗(yàn)評(píng)估;第4節(jié)介紹瓶頸檢測(cè)進(jìn)程所涉

2、及的幾個(gè)關(guān)鍵技術(shù);第5節(jié)對(duì)本章進(jìn)行小結(jié)。瓶頸檢測(cè)方式描述機(jī)械學(xué)習(xí)在科研和商業(yè)應(yīng)用中正發(fā)揮著愈來(lái)愈重要的作用。分類器是機(jī)械學(xué)習(xí)的一種大體方式,決策樹(shù)又是一種最重要的分類器。在本節(jié),咱們提出了一種基于決策樹(shù)的系統(tǒng)瓶頸檢測(cè)方式,并采納ID3分類算法對(duì)決策樹(shù)進(jìn)行分類。宏觀上給出了系統(tǒng)瓶頸檢測(cè)的三大步驟;詳細(xì)描述決策樹(shù)ID3分類算法,包括其算法流程及信息熵、條件熵、信息增量的計(jì)算。瓶頸檢測(cè)的一樣步驟瓶頸檢測(cè)需要借助于系統(tǒng)實(shí)時(shí)性能數(shù)據(jù)的分析,而這些數(shù)據(jù)是在一系列處于不同負(fù)載壓力的實(shí)驗(yàn)中得出。一開(kāi)始系統(tǒng)處于低負(fù)載壓力的情形下,但隨實(shí)在驗(yàn)的進(jìn)行,負(fù)載壓力會(huì)不斷增大,直到系統(tǒng)達(dá)到瓶頸為止。例如,實(shí)驗(yàn)以10個(gè)并發(fā)

3、的EBs開(kāi)始,每次增加10個(gè)EBs,直至系統(tǒng)的吞吐量急劇下降(即系統(tǒng)顯現(xiàn)瓶頸)為止。搜集到所需的性能數(shù)據(jù)以后,即能夠依照以下三個(gè)步驟來(lái)檢測(cè)系統(tǒng)瓶頸:第一步:判定當(dāng)前系統(tǒng)是不是已處于瓶頸狀態(tài);概念3-1SLA效勞水平協(xié)議(簡(jiǎn)稱:SLA全稱:ServiceLevelAgreement:)是指在必然開(kāi)銷下為保障效勞的性能和靠得住性,效勞提供商與用戶間概念的一種兩邊認(rèn)可的協(xié)定。概念3-2SLO效勞水平目標(biāo)(簡(jiǎn)稱:SLQ全稱:ServiceLevelObject)是指一個(gè)或多個(gè)有限定的效勞組件測(cè)量的組合,一樣來(lái)講,SLA的保障是以一系列效勞水平目標(biāo)(SLO的形式概念。效勞水平目標(biāo)(SLO中意度是衡量系統(tǒng)

4、是不是知足客戶需求最好的評(píng)判標(biāo)準(zhǔn),一樣以為當(dāng)SLO中意度小于某一百分比(如75%時(shí),能夠?yàn)橄到y(tǒng)已無(wú)法知足一樣用戶需求,即可判定現(xiàn)在系統(tǒng)顯現(xiàn)瓶頸。SLO中意度由SLO評(píng)估器通過(guò)必然算法生成,但針對(duì)不同的系統(tǒng)和用戶需求,SLO中意度的求解方式不盡相同。為了實(shí)驗(yàn)方便,咱們的SLO中意度采納以下公式求得:SLO滿意度當(dāng)前的S1Ps100%符合用戶最大需求的SIPS00%其中SIPS是指每秒鐘Web效勞的交互數(shù),它是衡量系統(tǒng)性能最重要的一個(gè)指標(biāo)(詳見(jiàn)),當(dāng)前的SIPS是指在當(dāng)前用戶訪問(wèn)量的情形下,系統(tǒng)每秒鐘能處置的Weba勞交互數(shù),它的值等于SIRT平均值的倒數(shù):系統(tǒng)當(dāng)前的SIPS1當(dāng)前SIRT平均值當(dāng)

5、前SIRT平均值是指系統(tǒng)Webt勞的平均響應(yīng)時(shí)刻(詳見(jiàn)),TPC-Ap洲準(zhǔn)包括7個(gè)Weba勞(詳見(jiàn)),每一個(gè)Webt勞的SIRT都可由實(shí)時(shí)監(jiān)控工具統(tǒng)計(jì),故計(jì)算公式如下:7當(dāng)前SIRT平均值SIR7(3.3)其中SIPSi(1i7)是指第i種Weba勞的平均響應(yīng)時(shí)刻符合用戶最大需求的SIPS概念為一常量,在本文中,咱們?cè)O(shè)定為100,即用戶對(duì)系統(tǒng)的最高要求是系統(tǒng)每秒鐘能達(dá)到100個(gè)Web勞交互數(shù)。第二步:判定瓶頸出此刻多層架構(gòu)中的哪一層;概念3-3瓶頸層:在多層散布式架構(gòu)中,致使系統(tǒng)最先顯現(xiàn)瓶頸的層稱之為瓶頸層。在第一步中,假設(shè)判定當(dāng)前系統(tǒng)已處于瓶頸狀態(tài),接著需要判定系統(tǒng)哪一層先顯現(xiàn)瓶頸。當(dāng)前大型

6、的IT企業(yè)應(yīng)用一樣包括三層,它們別離是HTTP層、應(yīng)用層和數(shù)據(jù)層,因此一次Webt勞的總響應(yīng)時(shí)刻等于HTTPS執(zhí)行時(shí)亥人應(yīng)用層執(zhí)行時(shí)刻和數(shù)據(jù)層執(zhí)行時(shí)刻之和。瓶頸層的特點(diǎn)是隨著負(fù)載壓力的不斷增大,其執(zhí)行時(shí)刻的增加速度最快。第三步:判定瓶頸層的哪些資源致使瓶頸。概念3-4瓶頸資源:在多層散布式架構(gòu)中,瓶頸層中致使系統(tǒng)瓶頸的系統(tǒng)資源稱之為瓶頸資源。系統(tǒng)的資源要緊包括CPU內(nèi)存、網(wǎng)絡(luò)帶寬等,咱們把致使系統(tǒng)瓶頸的資源稱之為瓶頸資源,把不是致使系統(tǒng)瓶頸的資源稱之為非瓶頸資源。瓶頸資源具有以下三個(gè)要緊特點(diǎn):1)高利用率;具有高利用率的資源意味著應(yīng)用程序?qū)λ懈咝枨?,是一個(gè)潛在的瓶頸資源。一樣來(lái)講,只有利用率

7、超過(guò)某一界限(如85%)才可能是瓶頸資源。2)增加率從某一正數(shù)慢慢接近于零;隨著負(fù)載壓力的慢慢增大,該資源的利用率也隨之增加,當(dāng)增加率接近于零時(shí)表示現(xiàn)在該資源的利用率已達(dá)極限。3)SLO中意度的大小與該資源利用率的高低關(guān)系緊密。在該資源處于低利用率的情形下,加大負(fù)載壓力,SLO中意度會(huì)慢慢上升;在該資源處于高利用率的情形下,加大負(fù)載壓力,SLO中意度會(huì)急劇下降。1.2.2決策樹(shù)ID3分類算法在上一節(jié)第三步中提到的系統(tǒng)資源與SLO中意度的關(guān)系能夠采納機(jī)械學(xué)習(xí)中的決策樹(shù)ID3分類算法來(lái)量化判定。由于決策樹(shù)的結(jié)構(gòu)越簡(jiǎn)單越能從本質(zhì)上歸納事物的規(guī)律,即生成的決策樹(shù)的平均深度最小,因此這就要求對(duì)各個(gè)結(jié)點(diǎn)選

8、擇最優(yōu)劃分。在各類決策樹(shù)分類的算法中,初期的有CAR存習(xí)算法和CLS算法,而最具阻礙力的是Quinlan提出的ID3算法,該算法的最終目標(biāo)是要生成一棵輸出決策樹(shù),對(duì)應(yīng)的輸出是大量的類別實(shí)例。它的具體步驟如下:檢查所有的屬性,選擇信息增益最大的屬性作為決策樹(shù)結(jié)點(diǎn),由該屬性的不同取值成立分支,再對(duì)各分支的子結(jié)點(diǎn)遞歸挪用以上步驟直至所有子集僅包括同一類別的數(shù)據(jù)為止。最后便取得一棵對(duì)新樣本進(jìn)行分類的決策樹(shù)。阻礙運(yùn)算機(jī)系統(tǒng)性能的系統(tǒng)資源很多,在數(shù)據(jù)挖掘初期,咱們不明白哪些是要緊因素,更不明白各個(gè)因素阻礙因子的大小。因此,咱們把因此可能致使系統(tǒng)瓶頸的資源都考慮進(jìn)來(lái),如CPU內(nèi)存、網(wǎng)絡(luò)帶寬等。決策樹(shù)的內(nèi)部結(jié)

9、點(diǎn)信息記錄系統(tǒng)資源利用率的增加幅度(即增加率),而葉結(jié)點(diǎn)包括所有SLO中意度的大小。通過(guò)檢查生成的決策樹(shù),咱們能夠找出和SLO中意度關(guān)系最緊密的系統(tǒng)資源。若是生成的決策樹(shù)中包括多種資源,那么在內(nèi)部結(jié)點(diǎn)中顯現(xiàn)次數(shù)最多的資源被以為是最有可能致使系統(tǒng)瓶頸的資源。算法描述咱們第一提出決策樹(shù)的概念:概念3-5決策樹(shù):決策樹(shù)是用二叉樹(shù)形圖來(lái)表示處置邏輯的一種工具。能夠直觀、清楚地表達(dá)加工的邏輯要求。專門適合于判定因素比較少、邏輯組合關(guān)系不復(fù)雜的情形。一棵決策樹(shù)可表示為DT(S,A),其中S是訓(xùn)練樣本集,A是候選屬性集,表示為A=A1,A2,A3,Am,并假設(shè)最終將訓(xùn)練樣本集分成N類。基于概念3-1,決策樹(shù)

10、ID3分類算法執(zhí)行流程如下:A為空?返回i作為葉節(jié) 點(diǎn),并以類C標(biāo)識(shí)返回i作為葉節(jié) 點(diǎn),標(biāo)識(shí)為普通類創(chuàng)建節(jié)點(diǎn)i選A中最高消息增益的屬性TestA,標(biāo)識(shí)節(jié)點(diǎn)i為TestATestA中還存在,未被選的值?從TestA中選擇a由節(jié)點(diǎn)i長(zhǎng)出MaxA=a的分支S中TestA=a的樣本加上一樹(shù)葉,標(biāo)識(shí)為普通類集合T為空?/加入一個(gè)由DT(T,A-TestA)返回的節(jié)點(diǎn)圖1-1決策樹(shù)ID3分類算法流程圖信息嫡的計(jì)算設(shè)第i(i=i=N)類的訓(xùn)練樣本個(gè)數(shù)為|S|,假設(shè)記一個(gè)實(shí)例屬于第i類的概率為P(Si),那么有:|SiP網(wǎng)現(xiàn)在,信息嫡的概念如下:mEntropy(S)(P(S)log2P()i13.3條件嫡的

11、計(jì)算子結(jié)點(diǎn)不純性程度的大小事選擇最正確劃分氣宇的依據(jù),子結(jié)點(diǎn)越不純,類的劃分在決策樹(shù)上就越傾斜。假設(shè)選擇測(cè)試屬性A進(jìn)行測(cè)試,設(shè)A具有屬性項(xiàng)(a1,a2,.,ak),在A=aj的情形下屬于第i類的實(shí)例個(gè)數(shù)為Cij個(gè),實(shí)例個(gè)數(shù)為Yi。用P(Si|Aaj)表示測(cè)試屬性A的取值為j時(shí),屬于第i類決策的概率,其計(jì)算公式如下:P(Si|A aj)宜YiEntropy (S, A aj)由前面的公式(3.4)、(3.5)和(3.6)能夠得出決策樹(shù)對(duì)分類的不確信程度,即訓(xùn)練樣本實(shí)例集對(duì)屬性A的條件嫡為:(p(Si|Aaj)log2P(Si|Aaj)(3.7)在選擇測(cè)試屬性A后,每一個(gè)Aaj葉結(jié)點(diǎn)Yj關(guān)于分類信

12、息的信息嫡為:B(S,A)(P(Si|Aaj)Entropy(S,Aaj)3.4條件嫡的計(jì)算有前面的公式(3.5)和(3.8)可知,屬性A對(duì)類別劃分提供的信息量,即屬性A的信息增益為:Gain(S,A)Entropy(S)B(S,A)(p(Si|Aaj)10g2P(Si|Aaj)(P(S|Aaj)Entropy(S,Aaj)通過(guò)比較所有屬性的信息增益,取其中最大值對(duì)應(yīng)的測(cè)試屬性作為類別劃分的依據(jù),構(gòu)造一級(jí)決策樹(shù)。然后繼續(xù)用一樣的方式不斷遞歸處置,慢慢求精,能夠構(gòu)造二級(jí)和多級(jí)決策樹(shù),直抵達(dá)到分類目標(biāo),生成所有葉結(jié)點(diǎn)。1.3瓶頸檢測(cè)的實(shí)驗(yàn)評(píng)估在上節(jié)中,咱們提出了多層架構(gòu)系統(tǒng)瓶頸檢測(cè)的三大步驟,并采

13、納機(jī)械學(xué)習(xí)的方式,提出了決策樹(shù)ID3分類算法。在本節(jié)中,咱們將利用由第二章實(shí)現(xiàn)的基于TPC-App基準(zhǔn)的測(cè)試系統(tǒng)來(lái)評(píng)估上節(jié)中提出的瓶頸檢測(cè)方式。第一,咱們?cè)谥薪o出了實(shí)驗(yàn)軟硬件環(huán)境的配置情形;接著,咱們?cè)谥幸勒展?jié)中提出的三大步驟對(duì)被測(cè)系統(tǒng)進(jìn)行瓶頸檢測(cè);然后,咱們?cè)谥幸詫?shí)驗(yàn)評(píng)估的方式對(duì)中得出的瓶頸層和瓶頸資源進(jìn)行驗(yàn)證;最后,在中,咱們對(duì)基于TPC-App基準(zhǔn)的被測(cè)系統(tǒng)性能進(jìn)行整體分析,以實(shí)現(xiàn)對(duì)系統(tǒng)的能力計(jì)劃。實(shí)驗(yàn)軟硬件環(huán)境本實(shí)驗(yàn)的軟件環(huán)境配置如下:Apache作為HTT吸勞器;JBoss作為應(yīng)用效勞器;MySQ昨?yàn)閿?shù)據(jù)庫(kù)效勞器;ApacheTomcat作為外部Web:勞模擬器;Apachemod_

14、jk模塊作為負(fù)載均衡器;nmon作為系統(tǒng)性能數(shù)據(jù)實(shí)時(shí)統(tǒng)計(jì)工具,ApacheAxis2作為開(kāi)發(fā)We做勞的輔助工具。為了保證明驗(yàn)結(jié)果的真實(shí)性、靠得住性和可再現(xiàn)性,咱們盡可能維持軟件的默許配置,除以下兩點(diǎn):1)關(guān)于JBoss,咱們加大了We欣勞的最大連接數(shù)(調(diào)至1024),并用all模式啟動(dòng)以支持散布式環(huán)境;2)關(guān)于MySQL咱們加大了用戶最大并發(fā)數(shù)(調(diào)至1000)以支持高負(fù)載情形下數(shù)據(jù)庫(kù)的正常連接。表3-1列出了本實(shí)驗(yàn)中所利用的軟件清單。TPC-App基準(zhǔn)規(guī)定的測(cè)試系統(tǒng)至少需要有三臺(tái)機(jī)械:一臺(tái)HTTP效勞器、一臺(tái)應(yīng)用效勞器和一臺(tái)數(shù)據(jù)庫(kù)效勞器。其中Apache和mod_jk部署在HTT瓚勞器上,JB

15、oss和Tomcat部署在應(yīng)用效勞器上,MySQIf口Amoeba署在數(shù)據(jù)庫(kù)效勞器上,且所有軟件都運(yùn)行在RedhatLinux系統(tǒng)上。其中HTT瓚勞器的低性能配置為PentiumHz雙核、1GB內(nèi)存,高性能配置為PentiumHz雙核、2GB內(nèi)存;應(yīng)用效勞器的低性能配置為:XeonHz雙核、2GB內(nèi)存,高性能配置為XeonHzM核、4GB內(nèi)存;數(shù)據(jù)庫(kù)效勞器的低性能配置為:Xeon2.5GHz四核、4GB內(nèi)存,高性能配置為XeonHz雙核、6GB內(nèi)存。表3-2列出了本實(shí)驗(yàn)中所利用的硬件清單。表1-1實(shí)驗(yàn)軟件配置清單軟件名稱版本號(hào)功能描述配置Redhat操作系統(tǒng)軟件默認(rèn)配置ApacheHTTP服務(wù)

16、器,提供用戶操作界面。默認(rèn)配置mod_jk/負(fù)載均衡器,用于平均分發(fā)HTTP青求。默認(rèn)配置JBossGAJ2EE應(yīng)用服務(wù)器,用于部署TPC-App基準(zhǔn)規(guī)定的7個(gè)Web服務(wù)。加大Web服務(wù)最大連接數(shù)至1024,以all模式啟動(dòng)Tomcat輕量級(jí)應(yīng)用服務(wù)器,用于部署TPC-App基準(zhǔn)規(guī)定的4個(gè)外部Web服務(wù)。默認(rèn)配置MySQLMax數(shù)據(jù)庫(kù)服務(wù)器,用于部署TPC-App基準(zhǔn)規(guī)定的8個(gè)數(shù)據(jù)庫(kù)表。加大用戶最大并發(fā)數(shù)至1000AmoebaforMySLQ分布式數(shù)據(jù)庫(kù)代理,附于更好的解決數(shù)據(jù)庫(kù)集群部署。默認(rèn)配置nmon530實(shí)時(shí)統(tǒng)計(jì)Linux系統(tǒng)的各項(xiàng)性能指標(biāo)。記錄時(shí)間間隔設(shè)為1sAxis2新一代SOA用擎

17、,方便Web服務(wù)的訪問(wèn)和部署。默認(rèn)配置表1-2實(shí)驗(yàn)硬件配置清單HTTP服務(wù)器應(yīng)用服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器性能低性能(L)高性能(H)低性能(L)高性能(H低性能(L)高性能(H)CPUPentium雙核Pentium雙核Xeon四核Xeon四核Xeon四核Xeon四核內(nèi)存1G2G2G4G3G6G硬盤320GB500GB146GB200GB146GB200GB單價(jià)30005000700015000900018000數(shù)量121213131212瓶頸檢測(cè)進(jìn)程實(shí)驗(yàn)的初始硬件配置為1/1/1(即1臺(tái)HTTP效勞器、1臺(tái)應(yīng)用效勞器和1臺(tái)數(shù)據(jù)庫(kù)效勞器)。客戶并發(fā)數(shù)EBs從10開(kāi)始,下一次EBs比上一次增加10,每

18、次都實(shí)時(shí)記錄SIRT和SIPS,從而計(jì)算出SLO中意度。圖3-2顯示了隨著EBs的不斷增大,SLO中意度的轉(zhuǎn)變示用意。從圖中咱們能夠看出在1/1/1的硬件環(huán)境下,當(dāng)EBs較小時(shí),SLO中意度隨著EBs的增加而慢慢增大;當(dāng)EBs大于100時(shí),SLO中意度再也不隨著EBs的增加而增大,而是維持較為穩(wěn)固的狀態(tài);但當(dāng)EBs大于180時(shí),SLO中意度大幅度下降。因此,咱們能夠判定當(dāng)EBs大于等于180時(shí),系統(tǒng)已顯現(xiàn)瓶頸。0123上LHICRILLLLL112222ODODOOQOO口y2S4/67OS9O1l-w5qqaa。a。a。aqo0qE05圖1-2SLO中意度轉(zhuǎn)變示用意接著咱們需要判定三層中哪一

19、層最先顯現(xiàn)瓶頸,即瓶頸層在哪一層。圖3-3顯示了在配置為1/1/1的情形下對(duì)TPC-App#準(zhǔn)測(cè)試的總響應(yīng)時(shí)刻及其各層的執(zhí)行時(shí)刻的統(tǒng)計(jì)。從圖中咱們能夠看出HTTP層的執(zhí)行時(shí)刻最少,不到總響應(yīng)時(shí)刻5%且其轉(zhuǎn)變率幾乎為零,因此可先排除HTTPS;數(shù)據(jù)層的執(zhí)行時(shí)刻盡管在客戶訪問(wèn)量小的時(shí)候比應(yīng)用層高,但隨著訪問(wèn)量的增加,它占總響應(yīng)時(shí)刻的比例愈來(lái)愈小,且其增加率是一個(gè)很小的常數(shù),因此數(shù)據(jù)層也不太可能是瓶頸層;應(yīng)用層的執(zhí)行時(shí)刻隨著客戶訪問(wèn)量的增加而不斷增加,增加速度在三層中最快,且其占總響應(yīng)時(shí)刻的比例愈來(lái)愈大。因此在本例中可判定應(yīng)用層是致使Web:勞響應(yīng)時(shí)刻變慢的要緊緣故,即應(yīng)用層是瓶頸層。圖1-3總響應(yīng)

20、時(shí)刻及各層執(zhí)行時(shí)刻轉(zhuǎn)變示用意一旦判定瓶頸出此刻應(yīng)用層后,咱們便開(kāi)始對(duì)應(yīng)用層的系統(tǒng)資源進(jìn)行分析,以確信哪些系統(tǒng)資源是瓶頸資源。圖3-4和圖3-5別離顯示了應(yīng)用效勞器中三個(gè)典型的系統(tǒng)資源(CPU內(nèi)存、網(wǎng)絡(luò)帶寬)利用率和轉(zhuǎn)變率示用意。觀測(cè)這兩個(gè)圖,第一可排除網(wǎng)絡(luò)帶寬,因?yàn)樗睦寐室恢焙苄?,未抵達(dá)85%勺臨界限。第二可排除內(nèi)存,因?yàn)楸M管它的利用率很高(超過(guò)85%,但其轉(zhuǎn)變率幾乎為零。最后咱們得出CPUa瓶頸資源,因?yàn)樗家灰恢懔似款i資源的三個(gè)條件:1)高利用率。從圖3-4中能夠看出當(dāng)EBs大于150時(shí),CPUP用率超過(guò)85%缶界限;2)增加率從某一正數(shù)慢慢接近于零。從圖3-5中能夠看出隨著EBs的

21、增加,CPU利用率的增加量從某一正數(shù)慢慢縮小至零;3)CPU利用率的大小阻礙著SLO中意度的高低。當(dāng)CPU利用率低時(shí),隨著負(fù)載壓力的增大,SLO中意度慢慢上升;當(dāng)CPUffl用率高時(shí),隨著負(fù)載壓力的增大,SLO中意度急劇下降。綜上所述,咱們可得出CPUa瓶頸資源的結(jié)論。圖1-4應(yīng)用層系統(tǒng)資源利用率示用意13-z變化率SO%-10%-206圖1-5應(yīng)用層系統(tǒng)資源轉(zhuǎn)變率示用意以上是采納較為直觀的觀看方式得出CPU瓶頸資源的結(jié)論,為了得出更科學(xué)的結(jié)論,下面咱們將采納提出的ID3分類方式構(gòu)造出決策樹(shù)。從圖3-5中,咱們明白CPUI勺轉(zhuǎn)變率從某一正數(shù)(19流右)慢慢接近于0%而內(nèi)存和網(wǎng)絡(luò)帶寬的轉(zhuǎn)變率幾乎

22、一直為0%把這些數(shù)據(jù)作為ID3分類器的輸入,咱們即可構(gòu)造出圖3-6所示的決策樹(shù)。從圖中咱們能夠看出SLO中意度的高低和CPU?專變率的大小有直接的關(guān)系,而和內(nèi)存、網(wǎng)絡(luò)帶寬的轉(zhuǎn)變率沒(méi)有關(guān)系。因此,咱們也可判定出CPU瓶頸資源。圖1-6應(yīng)用層各系統(tǒng)資源與SLO中意度的決策樹(shù)瓶頸檢測(cè)實(shí)驗(yàn)結(jié)果驗(yàn)證在上一節(jié)中,咱們通過(guò)提出的瓶頸檢測(cè)方式,得出在1/1/1的配置下,系統(tǒng)的瓶頸出此刻應(yīng)用層,且應(yīng)用層的CPU致使系統(tǒng)顯現(xiàn)瓶頸的資源。為了客觀驗(yàn)證上述判定的準(zhǔn)確性,在這一節(jié)中,咱們將通過(guò)實(shí)驗(yàn)的方式對(duì)瓶頸檢測(cè)結(jié)果進(jìn)行驗(yàn)證。第一,為了驗(yàn)證瓶頸確實(shí)出此刻應(yīng)用層,咱們?cè)谠械?/1/1配置基礎(chǔ)上別離增加1臺(tái)HTT瓚勞器、

23、1臺(tái)應(yīng)用效勞器和1臺(tái)數(shù)據(jù)庫(kù)效勞器,即配置別離為2/1/1、1/2/1和1/1/2。圖3-7顯示了在這四種配置下得出的系統(tǒng)性能數(shù)據(jù)比較(在那個(gè)地址,咱們以TPC-App基準(zhǔn)中規(guī)定的SIPS,即每秒鐘We欣勞交互數(shù),作為衡量系統(tǒng)性能高低的唯一標(biāo)準(zhǔn))。從圖中咱們能夠看出增加1臺(tái)HTT瓚勞器對(duì)性能幾乎沒(méi)有提升,增加1臺(tái)數(shù)據(jù)庫(kù)效勞器對(duì)性能盡管有所提升,但并非明顯,只提升了10流右,而增加1臺(tái)應(yīng)用效勞器對(duì)系統(tǒng)性能有明顯的提升,大約是原系統(tǒng)的兩倍。如此便證明了在原系統(tǒng)中,最先顯現(xiàn)瓶頸的確實(shí)是應(yīng)用層。圖1-7各層不同配置下系統(tǒng)性能比較接著咱們?cè)黾討?yīng)用效勞器中CPU內(nèi)存、網(wǎng)絡(luò)的供給量,其中CPU+俵示CPU的主

24、頻增加,CPU+2ft示CPUi頻增加1GHz內(nèi)存+1表示內(nèi)存容量增加1GB內(nèi)存+2表示內(nèi)容容量增加2GB網(wǎng)絡(luò)+1表示網(wǎng)絡(luò)帶寬增加10M網(wǎng)絡(luò)+2表示網(wǎng)絡(luò)帶寬20M圖3-8別離顯示了上述的6種配置與標(biāo)準(zhǔn)配置系統(tǒng)性能的比較。從圖中咱們能夠看出增加CP頻對(duì)系統(tǒng)性能有較為明顯地提升,增加內(nèi)存容量對(duì)系統(tǒng)性能有些許地提升,而增加網(wǎng)絡(luò)帶寬對(duì)系統(tǒng)性能幾乎沒(méi)有阻礙。因此,證明了應(yīng)用層中的CPU瓶頸資源。圖1-8應(yīng)用層不同資源配置下系統(tǒng)性能比較實(shí)驗(yàn)結(jié)果整體分析圖3-9顯示了在不同硬件配置條件下,對(duì)TPC-App基準(zhǔn)測(cè)試得出的SLO兩意度。從圖中咱們能夠得出以下幾個(gè)重要結(jié)論:HTTP層一樣可不能成為瓶頸層:H/H/

25、H與L/H/H的SLO中意度幾乎相同,可見(jiàn)增加一臺(tái)HTTP應(yīng)用效勞器對(duì)被測(cè)系統(tǒng)的整體性能幾乎沒(méi)有提升。2)在初始時(shí)期,應(yīng)用層是瓶頸層,但隨著應(yīng)用效勞器數(shù)量的增加,數(shù)據(jù)層變成瓶頸層:在初始配置L/L/L的情形下,增加一臺(tái)應(yīng)用效勞器(L/2L/L)或把原應(yīng)用效勞器換成高性能機(jī)械(L/H/L),被測(cè)系統(tǒng)的SLO中意度有顯著提高(變成原先的兩倍多),而把數(shù)據(jù)庫(kù)效勞器換成高性能機(jī)械(L/H/H)對(duì)SLO中意度沒(méi)有阻礙。但當(dāng)應(yīng)用效勞器足夠時(shí)(如L/2L/L),增加一臺(tái)數(shù)據(jù)庫(kù)效勞器(L/2L/2L)比增加一臺(tái)應(yīng)用效勞器(L/3L/L)對(duì)SLO中意度的提升更多。3)集群比單結(jié)點(diǎn)性價(jià)比高:最后咱們還發(fā)覺(jué)L/2L

26、/L(14000)比L/H/L(15000)花費(fèi)更少,卻能取得更高的SLO中意度,因此假設(shè)了解此特性,便能有效地節(jié)約本錢。圖1-9TPC-App性能實(shí)驗(yàn)評(píng)估結(jié)果瓶頸檢測(cè)的關(guān)鍵技術(shù)以上幾節(jié)介紹了多層架構(gòu)系統(tǒng)瓶頸檢測(cè)的實(shí)驗(yàn)進(jìn)程,本節(jié)咱們將論述該實(shí)驗(yàn)所涉及的幾個(gè)關(guān)鍵技術(shù)。咱們將在中介紹如何利用LoadRunner模擬真實(shí)的負(fù)載,以保證明驗(yàn)結(jié)果的真實(shí)靠得住性;在中介紹如何從原始數(shù)據(jù)中準(zhǔn)確提取所需的那部份數(shù)據(jù);在中介紹如何快速地處置與分析海量的實(shí)驗(yàn)數(shù)據(jù)。系統(tǒng)真實(shí)負(fù)載的模擬利用LoadRunner的虛擬發(fā)生器(VirtualGenerator),測(cè)試者能夠輕松創(chuàng)建虛擬用戶,模擬真實(shí)的業(yè)務(wù)流程和用戶操作行為

27、。借助參數(shù)化的功能實(shí)現(xiàn)并發(fā)用戶的不同行為,進(jìn)而實(shí)現(xiàn)真正意義上的并發(fā)。通過(guò)TurboLoad專利技術(shù),更能讓客戶取得最高的規(guī)模適應(yīng)性水平。LoadRunner要緊包括5大組件,它們或作為獨(dú)立的模塊別離完成各自功能,或作為L(zhǎng)oadRunner的一部份彼此銜接,與其他模塊一起完成系統(tǒng)性能的整體測(cè)試。這5大組件別離是:VirtualGenerator(虛擬生成器),用于捕捉實(shí)際用戶業(yè)務(wù)流程和創(chuàng)建自動(dòng)性能測(cè)試腳本;Controller(操縱器),用于組織、驅(qū)動(dòng)、治理和監(jiān)控負(fù)載測(cè)試;LoadGenerator(負(fù)載生成器),通過(guò)運(yùn)行虛擬用戶生成負(fù)載;Analysis(分析組件),用于查看、分析和比較性能測(cè)

28、試結(jié)果;Launcher(啟動(dòng)組件),為執(zhí)行LoadRunner各項(xiàng)任務(wù)提供統(tǒng)一界面。圖3-10顯示了LoadRunner的工作原理。虛擬生成器通過(guò)錄制客戶端和后臺(tái)效勞器之間的通信包,分析其中的協(xié)議,自動(dòng)產(chǎn)生腳本??蛻粼谧詣?dòng)產(chǎn)生腳本的基礎(chǔ)上進(jìn)行修改,從而快速開(kāi)發(fā)出一個(gè)邏輯功能和客戶端軟件完全一樣的壓力腳本程序。創(chuàng)建虛擬用戶后,便開(kāi)始設(shè)定負(fù)載方案,業(yè)務(wù)流程組合和虛擬用戶數(shù)量。操縱器的Rendezvous功能提供一個(gè)互動(dòng)的環(huán)境,在其中既能成立起持續(xù)循環(huán)的負(fù)載,又能治理和驅(qū)動(dòng)負(fù)載測(cè)試方案。而且,還能夠利用它的日程打算效勞來(lái)概念用戶在何時(shí)訪問(wèn)系統(tǒng)以產(chǎn)生負(fù)載。最后,分析組件通過(guò)對(duì)操縱器搜集的大量數(shù)據(jù)進(jìn)行

29、綜合分析,以圖的形式展現(xiàn)給用戶,用戶通過(guò)度析各類參數(shù)指標(biāo)來(lái)確信系統(tǒng)的性能瓶頸所在??蛻魣D1-10LoadRunner工作原理示用意數(shù)據(jù)庫(kù)服務(wù)器海量數(shù)據(jù)的分析與處置在數(shù)據(jù)搜集系統(tǒng)測(cè)試中,除要對(duì)測(cè)量值及其各類處置后的數(shù)據(jù)進(jìn)行記錄外,還要對(duì)此系統(tǒng)所測(cè)得的原始數(shù)據(jù)進(jìn)行存儲(chǔ)以便往后分析和統(tǒng)計(jì)。因此,在測(cè)試軟件的界面上應(yīng)該能夠同時(shí)顯示出處置后的數(shù)據(jù)和原始數(shù)據(jù)以便在測(cè)試后馬上能夠查看與該記錄相關(guān)的所有數(shù)據(jù)。咱們的解決方案是在測(cè)試時(shí)只在后臺(tái)向ACCES激據(jù)庫(kù)的原始數(shù)據(jù)表中添加記錄但不在界面上顯示這些數(shù)據(jù)。當(dāng)需要查看原始數(shù)據(jù)時(shí),在處置后數(shù)據(jù)表所對(duì)應(yīng)的List控件當(dāng)選擇所對(duì)應(yīng)的那條記錄,掏出其索引值,然后在原始數(shù)

30、據(jù)表中查找與該索引值相匹配的假設(shè)干條原始數(shù)字量數(shù)據(jù),把它們提掏出來(lái)在另一個(gè)List控件中顯示。如此顯示原始數(shù)據(jù)時(shí)只相當(dāng)于對(duì)假設(shè)干條記錄進(jìn)行顯示,這種情形完全屬于小數(shù)據(jù)量情形,因此速度專門快。同時(shí)能夠?qū)@假設(shè)干條數(shù)據(jù)進(jìn)行比較,找出最大和最小值,并在該List控件中向這些記錄添加標(biāo)志,如此即能夠完成數(shù)據(jù)極值的標(biāo)志添加功能,又節(jié)省了數(shù)據(jù)庫(kù)中存儲(chǔ)標(biāo)志值的空間。關(guān)于上一段中提到的數(shù)據(jù)庫(kù)中的數(shù)據(jù),需要以數(shù)據(jù)庫(kù)文件(*mdb)的形式進(jìn)行存儲(chǔ),以方便下一次繼續(xù)進(jìn)行測(cè)量時(shí)能夠打開(kāi)該數(shù)據(jù)庫(kù)文件,并向該數(shù)據(jù)庫(kù)文件中添加或刪除記錄。為了使該測(cè)試軟件的界面更為友好,需要把數(shù)據(jù)庫(kù)的數(shù)據(jù)與界面的顯示同步起來(lái)。一種很顯然的做

31、法是在應(yīng)用程序每次打開(kāi)一個(gè)數(shù)據(jù)庫(kù)文件時(shí)把數(shù)據(jù)庫(kù)中的數(shù)據(jù)全數(shù)加載到界面上的List控件中,如此做能夠保證在List控件中添加和刪除數(shù)據(jù)與在數(shù)據(jù)庫(kù)中的操作完全同步??墒钱?dāng)數(shù)據(jù)庫(kù)文件達(dá)到數(shù)百兆以上時(shí),向List控件中加載海量數(shù)據(jù)會(huì)致使數(shù)據(jù)庫(kù)文件打開(kāi)進(jìn)程超級(jí)緩慢。咱們的解決方案是引入滑動(dòng)窗口機(jī)制。當(dāng)打開(kāi)一個(gè)海量數(shù)據(jù)庫(kù)文件時(shí)僅僅把該數(shù)據(jù)庫(kù)中一部份數(shù)據(jù)量提掏出來(lái),然后將它們添加到界面的List控件中。如此做就能夠夠幸免在打開(kāi)或初始化程序時(shí)把全數(shù)海量數(shù)據(jù)添加進(jìn)來(lái)所帶來(lái)的打開(kāi)速度過(guò)慢問(wèn)題。在程序的運(yùn)行進(jìn)程中,應(yīng)該能夠方便的在界面上查看和處置數(shù)據(jù)庫(kù)中的記錄,因此需要為窗口提供翻頁(yè)和定位功能并始終維持顯示窗口與數(shù)據(jù)庫(kù)相應(yīng)位置的同步。同步是滑動(dòng)窗口機(jī)制可否順利運(yùn)轉(zhuǎn)的關(guān)鍵。需要把ACCES數(shù)據(jù)庫(kù)的記錄指針和List控件的Item指針綁定起來(lái),在窗口翻頁(yè)或更新定位時(shí)依照List控件的Item指針查找數(shù)據(jù)庫(kù)中的記錄指針,然后依照該指針在ACCES漱據(jù)庫(kù)中提取必然的數(shù)據(jù)并把它們更新到List控件中。如此用戶就能夠夠方便的在List控件中查看他需要的數(shù)據(jù)。在每次用戶定位后,當(dāng)即從數(shù)據(jù)庫(kù)中提取

溫馨提示

  • 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)論