第四章 系統(tǒng)性能評價_第1頁
第四章 系統(tǒng)性能評價_第2頁
第四章 系統(tǒng)性能評價_第3頁
第四章 系統(tǒng)性能評價_第4頁
第四章 系統(tǒng)性能評價_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日性能指標第4章 系統(tǒng)性能評價系統(tǒng)性能是一個系統(tǒng)提供給用戶的眾多性能指標的混合體。它既包括硬件性能,也包括軟件性能。隨著計算機技術的不斷發(fā)展,有關性能的描述也越來越細化,根據(jù)不同的應用需要產(chǎn)生了各種各樣的性能指標,如整數(shù)運算性能、浮點運算性能、響應時間、網(wǎng)絡帶寬、穩(wěn)定性、I/O吞吐量、SPEC-Int、SPEC-Fp、TPC、Gibson mix等。有了這些性能指標之后,如何來衡量這些性能指標呢?這就涉及到了性能計算。同時

2、用戶對性能需求的多樣性和廣泛性也更進一步加快了計算機技術的發(fā)展,并由此出現(xiàn)了一個新的分支:性能設計。性能設計主要包含兩方面的內容:一是作為未來計算機技術發(fā)展的參考和規(guī)劃;另一個則是對現(xiàn)有系統(tǒng)進行性能上的調整以達到最優(yōu)化。在系統(tǒng)性能指標的不斷增多和完善過程中,許多公司和個人投身于系統(tǒng)性能的挖掘和實踐中,并由此產(chǎn)生了一系列有效的系統(tǒng)性能評價體系。如前面提到SPEC,已經(jīng)成為測試CPU的最權威的性能測試標準。本章將就系統(tǒng)性能的4個方面進行闡述:(1)性能指標:描述當前流行系統(tǒng)主要涉及到的性能指標;(2)性能計算:描述當前使用到的主要性能指標的計算方法;(3)性能設計:描述如何對現(xiàn)有系統(tǒng)進行性能上的調

3、整優(yōu)化,并介紹幾個已經(jīng)成熟的設計規(guī)則和解決方案;(4)性能評估:描述如何對當前取得的性能指標進行評價和改進。4.1 性能指標在計算機剛剛誕生時,所謂的系統(tǒng)僅僅指的是計算機本身,隨著網(wǎng)絡的出現(xiàn)和發(fā)展,諸如路由器、交換機設備,TCP/IP、SPX/IPX、以太網(wǎng)、光纖網(wǎng)絡等網(wǎng)絡技術如雨后春筍般涌現(xiàn)。系統(tǒng)的概念也不再局限于單臺計算機,而成為一個集各種通信設備于一體的集成裝置。因此,這里所提到的性能指標,既包括軟件,也包括硬件。在硬件中,既包括計算機,也包括各種通信交換設備、以及其他網(wǎng)絡硬件;在軟件中,既包括操作系統(tǒng)和各種通信協(xié)議,也包括各種參與到通信中應用程序,如數(shù)據(jù)庫系統(tǒng)、Web服務器等。因此,本

4、節(jié)要提到的系統(tǒng)性能指標實際上就是這些軟硬件的性能指標的集成。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)···第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日計算機4.1.1 計算機對計算機評價的主要性能指標如下:1時鐘頻率(主頻)主頻是計算機的主要性能指標之一,在很大程度上決定了計算機的運算速度。CPU的工作節(jié)拍是由主時鐘來控制的,主時鐘不斷產(chǎn)生固定頻率的時鐘脈沖,這個主時鐘的頻率即是CP

5、U的主頻。主頻越高,意味著CPU的工作節(jié)拍就越快,運算速度也就越快。一般用在一秒鐘內處理器所能發(fā)出的脈沖數(shù)量來表示主頻。隨著半導體工藝的不斷提升,時鐘頻率的計量單位已由原來的MHz逐步推進到以GHz來進行標識。從2000年IBM發(fā)布第一款雙核心模塊處理器開始,多核心已經(jīng)成為CPU發(fā)展的一個重要方向。原來單以時鐘頻率來計算性能指標已經(jīng)不合適了,還得看單個CPU中的內核數(shù)。現(xiàn)在主流的服務器CPU大都為雙核或四核,未來更可能發(fā)展到32核,96核甚至更多。2高速緩存高速緩存可以提高CPU的運行效率。目前一般采用兩級高速緩存技術,有些使用三層。高速緩沖存儲器均由靜態(tài)RAM(Random Access M

6、emory,隨機存取存儲器)組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。采用回寫(WriteBack)結構的高速緩存。它對讀和寫操作均有可提供緩存。而采用寫通(Write-through)結構的高速緩存,僅對讀操作有效。L2及L3高速緩存容量也會影響CPU的性能,原則是越大越好。3運算速度運算速度是計算機工作能力和生產(chǎn)效率的主要表征,它取決于給定時間內CPU所能處理的數(shù)據(jù)量和CPU的主頻。其單位一般用MIPS(百萬條指令/秒)和MFLOPS(百萬次浮點運算/秒)。MIPS用于描述計算機的定點運算能力;MFLOPS則用來表示計算機的浮點運算能力。4運算

7、精度即計算機處理信息時能直接處理的二進制數(shù)據(jù)的位數(shù),位數(shù)越多,精度就越高。參與運算的數(shù)據(jù)的基本位數(shù)通常用基本字長來表示。PC(Personal Computer,個人計算機)機的字長,已由8088的準16位(運算用16位,I/O用8位)發(fā)展到現(xiàn)在的32位、64位。大中型計算機一般為32位和64位。巨型機一般為64位。在單片機中,目前主要使用的是8位和16位字長。5內存的存儲容量內存用來存儲數(shù)據(jù)和程序,直接與CPU進行信息交換。內存的容量越大,可存儲的數(shù)據(jù)和程序就越多,從而減少與磁盤信息交換的次數(shù),使運行效率得到提高。存儲容量一般用字節(jié)(Byte)數(shù)來度量。PC機的內存已由286機配置的1MB,

8、發(fā)展到現(xiàn)在主流的1G以上。而在服務器領域中,一般的都在28G,多的如銀行系統(tǒng)中省級結算中心使用的大型機,內存高達上百GB。內存容量的加大,對于運行大型軟件十分必要,尤其是對于大型數(shù)據(jù)庫應用。內存數(shù)據(jù)庫的出現(xiàn)更是將內存的使用發(fā)揮到了極致。6存儲器的存取周期內存完成一次讀(?。┗驅懀ù妫┎僮魉璧臅r間稱為存儲器的存取時間或者訪問時間。而連續(xù)兩次讀(或寫)所需的最短時間稱為存儲周期。存儲周期越短,表示從內存存取信息的時間越短,系統(tǒng)的性能也就越高。目前內存的存取周期約為幾到幾十ns(10-9秒)。存儲器的I/O的速度、主機I/O的速度,取決于I/O總線的設計。這對于慢速設備(例如鍵盤、打印機)關系不大

9、,但對于高速設備則效果十分明顯。例如對于當前的硬盤,它的外部傳輸率已可達100MBps、133MBps以上。7數(shù)據(jù)處理速率數(shù)據(jù)處理速率(Processing Data Rate,PDR)的計算公式是:PDRL/R。其中:L0.85G0.15H0.4J0.15K;R0.85M0.09N0.06P其中:G是每條定點指令的位數(shù)M是平均定點加法時間      H是每條浮點指令的位數(shù)N是平均浮點加法時間      J是定點操作數(shù)的位數(shù)P是平均浮點乘法時間      K是浮點操作數(shù)的位數(shù)另外還規(guī)定:G>20位,

10、H>30位;從主存取一條指令的時間等于取一個字的時間;指令和操作數(shù)都存放在同一個主存,無變址或間址操作;允許有先行或并行取指令功能,此時選用平均取指令時間。PDR主要用來度量CPU和主存儲器的速度,它沒有涉及到高速緩存和多功能等。因此,PDR不能度量機器的整體速度。8響應時間某一事件從發(fā)生到結束的這段時間。其含義將根據(jù)應用的不同而變化。響應時間既可以是原子的,也可以是由幾個響應時間復合而成的。在計算機技術的發(fā)展中,早在1968年,米勒先生即給出了3個經(jīng)典的有關響應時間的建議:  0.1秒:用戶感覺不到任何延遲。  1.0秒:用戶愿意接受的系統(tǒng)立即響應的時間極限。即當執(zhí)

11、行一項任務的有效反饋時間在0.11秒之內時,用戶是愿意接受的。超過此數(shù)據(jù)值,則意味著用戶會感覺到有延遲,但只要不超過10秒,用戶還是可以接受的。  10秒:用戶保持注意力執(zhí)行本次任務的極限,如果超過此數(shù)值時仍然得不到有效的反饋,客戶會在等待計算機完成當前操作時轉向其他的任務。9RASIS特性RASIS特性是可靠性(Reliability)、可用性(Availability)、可維護性(Serviceability)、完整性(Integraity)和安全性(Security)五者的統(tǒng)稱。可靠性是指計算機系統(tǒng)在規(guī)定的工作條件下和規(guī)定的工作時間內持續(xù)正確運行的概率??煽啃砸话闶怯闷骄鶡o故障

12、時間(Mean Time To Failure,MTTF)或平均故障間隔時間(Mean Time Between Failure,MTBF)來衡量??删S護性是指系統(tǒng)發(fā)生故障后能盡快修復的能力,一般用平均故障修復時間(Mean Time To Repair,MTTR)來表示。取決于維護人員的技術水平和對系統(tǒng)的熟悉程度,同時和系統(tǒng)的可維護性也密切相關。有關這些特性的詳細知識,將在16.5節(jié)介紹。10平均故障響應時間平均故障響應時間(TAT)即從出現(xiàn)故障到該故障得到確認修復前的這段時間。該指標反應的是服務水平。平均故障響應時間越短,對用戶系統(tǒng)的影響越小。11兼容性兼容性是指一個系統(tǒng)的硬件或軟件與另一

13、個系統(tǒng)或多種操作系統(tǒng)的硬件或軟件的兼容能力,是指系統(tǒng)間某些方面具有的并存性,即兩個系統(tǒng)之間存在一定程度的通用性。兼容是一個廣泛的概念,它包括數(shù)據(jù)和文件的兼容、程序和語言級的兼容、系統(tǒng)程序的兼容、設備的兼容、以及向上兼容和向后兼容等。除了上述性能指標之外,還有其他性能指標,例如綜合性能指標如吞吐率、利用率;定性指標如保密性、可擴充性;功能特性指標如文字處理能力、聯(lián)機事務處理能力、I/O總線特性、網(wǎng)絡特性等。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:

14、希賽網(wǎng)    2014年04月18日網(wǎng)絡4.1.2 網(wǎng)絡網(wǎng)絡是一個是由多種設備組成的集合體。其性能指標也名目繁多。一般可以將這些性能指標分為下面幾類:(1)設備級性能指標。網(wǎng)絡設備提供的通信量的特征,是確定網(wǎng)絡性能的一個重要因素。計算機網(wǎng)絡設備(主要指路由器)的標準性能指標主要包括吞吐量(信道的最大吞吐量為"信道容量")、延遲、丟包率和轉發(fā)速度等。(2)網(wǎng)絡級性能指標??蛇_性、網(wǎng)絡系統(tǒng)的吞吐量、傳輸速率、信道利用率、信道容量、帶寬利用率、丟包率、平均傳輸延遲、平均延遲抖動、延遲/吞吐量的關系、延遲抖動/吞吐量的關系、丟包率/吞吐量的關

15、系等。(3)應用級性能指標。QoS、網(wǎng)絡對語言應用的支持程度、網(wǎng)絡對視頻應用的支持程度、延遲/服務質量的關系、丟包率/服務質量的關系、延遲抖動/服務質量的關系等。(4)用戶級性能指標。計算機網(wǎng)絡是一種長周期運行的系統(tǒng)??煽啃院涂捎眯允情L周期運行系統(tǒng)非常重要的服務性能,是決定系統(tǒng)是否有實際使用價值的重要參數(shù)。(5)吞吐量。在沒有幀丟失的情況下,設備能夠接受的最大速率。網(wǎng)絡吞吐量可以幫助尋找網(wǎng)絡路徑中的瓶頸。例如,即使客戶端和服務器都被分別連接到各自的100Mbps以太網(wǎng)上,但是如果這兩個100Mbps以太網(wǎng)被10Mbps的以太網(wǎng)連接起來,那么10Mbps的以太網(wǎng)就是網(wǎng)絡的瓶頸。網(wǎng)絡吞吐量非常依賴

16、于當前的網(wǎng)絡負載情況。因此,為了得到正確的網(wǎng)絡吞吐量,最好在不同時間(一天中的不同時刻,或者一周中不同的天)分別進行測試,只有這樣才能得到對網(wǎng)絡吞吐量的全面認識。有些網(wǎng)絡應用程序在開發(fā)過程的測試中能夠正常運行,但是到實際的網(wǎng)絡環(huán)境中卻無法正常工作(由于沒有足夠的網(wǎng)絡吞吐量)。這是因為測試只是在空閑的網(wǎng)絡環(huán)境中,沒有考慮到實際的網(wǎng)絡環(huán)境中還存在著其他的各種網(wǎng)絡流量。所以,網(wǎng)絡吞吐量定義為剩余帶寬是有實際意義的。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來

17、源:希賽網(wǎng)    2014年04月18日操作系統(tǒng)4.1.3 操作系統(tǒng)現(xiàn)代操作系統(tǒng)的基本功能是管理計算機系統(tǒng)的硬件、軟件資源,這些管理工作分為處理機管理、存儲器管理、設備管理、文件管理、作業(yè)和通信事務管理。操作系統(tǒng)的性能與計算機系統(tǒng)工作的優(yōu)劣有著密切的聯(lián)系。評價操作系統(tǒng)的性能指標一般有:(1)系統(tǒng)的可靠性。(2)系統(tǒng)的吞吐率(量),是指系統(tǒng)在單位時間內所處理的信息量,以每小時或每天所處理的各類作業(yè)的數(shù)量來度量。(3)系統(tǒng)響應時間,是指用戶從提交作業(yè)到得到計算結果這段時間,又稱周轉時間;(4)系統(tǒng)資源利用率,指系統(tǒng)中各個部件、各種設備的使用程度。它用在給定時

18、間內,某一設備實際使用時間所占的比例來度量。(5)可移植性。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日數(shù)據(jù)庫管理系統(tǒng)4.1.4 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫為了保證存儲在其中的數(shù)據(jù)的安全和一致,必須有一組軟件來完成相應的管理任務,這組軟件就是DBMS,DBMS隨系統(tǒng)的不同而不同,但是一般來說,它應該包括以下幾方面的內容:(1)數(shù)據(jù)庫描述功能。定義數(shù)據(jù)庫的全局邏輯結構,局部邏輯結構

19、和其他各種數(shù)據(jù)庫對象。(2)數(shù)據(jù)庫管理功能。包括系統(tǒng)配置與管理,數(shù)據(jù)存取與更新管理,數(shù)據(jù)完整性管理和數(shù)據(jù)安全性管理。(3)數(shù)據(jù)庫的查詢和操縱功能。該功能包括數(shù)據(jù)庫檢索和修改。(4)數(shù)據(jù)庫維護功能。包括數(shù)據(jù)引入引出管理,數(shù)據(jù)庫結構維護,數(shù)據(jù)恢復功能和性能監(jiān)測。為了提高數(shù)據(jù)庫系統(tǒng)的開發(fā)效率,現(xiàn)代數(shù)據(jù)庫系統(tǒng)除了DBMS之外,還提供了各種支持應用開發(fā)的工具。因此,衡量數(shù)據(jù)庫管理系統(tǒng)的主要性能指標包括數(shù)據(jù)庫本身和管理系統(tǒng)兩部分。數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)的性能指標包括數(shù)據(jù)庫的大小、單個數(shù)據(jù)庫文件的大小、數(shù)據(jù)庫中表的數(shù)量、單個表的大小、表中允許的記錄(行)數(shù)量、單個記錄(行)的大小、表上所允許的索引數(shù)量、數(shù)據(jù)

20、庫所允許的索引數(shù)量、最大并發(fā)事務處理能力、負載均衡能力、最大連接數(shù)。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日Web服務器4.1.5 Web服務器Web服務器也稱為WWW服務器,主要功能是提供網(wǎng)上信息瀏覽服務。在UNIX和Linux平臺下使用最廣泛的HTTP服務器是W3C、NCSA和Apache服務器,而Windows平臺使用IIS的Web服務器。跨平臺的Web服務器有I

21、BM WebSphere、BEA WebLogic、Tomcat等。在選擇使用Web服務器應考慮的本身特性因素有性能、安全性、日志和統(tǒng)計、虛擬主機、代理服務器、緩沖服務和集成應用程序等。Web服務器的主要性能指標包括最大并發(fā)連接數(shù)、響應延遲、吞吐量(每秒處理的請求數(shù))、成功請求數(shù)、失敗請求數(shù)、每秒點擊次數(shù)、每秒成功點擊次數(shù)、每秒失敗點擊次數(shù)、嘗試連接數(shù)、用戶連接數(shù)等。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)  

22、0; 2014年04月18日性能計算4.2 性能計算隨著計算機系統(tǒng)復雜度的不斷增長,性能指標也隨著不斷地增長,同時也增加了衡量計算機系統(tǒng)性能的難度。如何在眾多指標中選取合適的性能指標,以及選擇何種衡量方法都成為一項重要的課題。因此也衍生了各種性能評估體系。由于性能指標種類繁多,不可能一一列舉,本節(jié)主要介紹一些常用性能指標的計算方法。在實際應用時,往往是對這些常用性能指標的復合計算,然后通過算法加權處理得到最終結果。性能指標計算的主要方法有:定義法、公式法、程序檢測法、儀器檢測法。定義法主要根據(jù)其定義直接獲取其理想數(shù)據(jù),公式法則一般適用于根據(jù)基本定義所衍生出的復合性能指標的計算,而程序

23、檢測法和儀器檢測法則是通過實際的測試來得到其實際值(由于測試的環(huán)境和條件不定,其結果也可能相差比較大)。有些性能指標,在不同的環(huán)境中,其名字相同,但計算方式和結果可能相差甚遠,例如,吞吐量、帶寬等,在計算機、路由器、交換機和網(wǎng)絡中多處出現(xiàn)了有關吞吐量的定義,但其具體的含義不盡相同。1.MIPS的計算方法式中,F(xiàn)z為處理機的工作主頻,CPI(Cycles Per Instruction)為每條指令所需的平均時鐘周期數(shù),IPC為每個時鐘周期平均執(zhí)行的指令條數(shù)。例如,如果要計算Pentium IV/2.4E處理機的運算速度,由于Pentium IV/2.4E處理機的IPC=2(或CPI=0.5),F(xiàn)

24、z=2400MHz,所以2.峰值計算衡量計算機性能的一個重要指標就是計算峰值或者浮點計算峰值,它是指計算機每秒鐘能完成的浮點計算最大次數(shù)。包括理論浮點峰值和實測浮點峰值。理論浮點峰值是該計算機理論上能達到的每秒鐘能完成浮點計算最大次數(shù),它主要是由CPU的主頻決定的。理論浮點峰值 = CPU主頻CPU每個時鐘周期執(zhí)行浮點運算的次數(shù)系統(tǒng)中CPU數(shù)希賽教育專家提示:CPU每個時鐘周期執(zhí)行浮點運算的次數(shù)是由處理器中浮點運算單元的個數(shù)及每個浮點運算單元在每個時鐘周期能處理幾條浮點運算來決定的。3.等效指令速度靜態(tài)指令使用頻度指的是在程序中直接統(tǒng)計的計算機速度。動態(tài)指令使用頻度指的是在程序執(zhí)行過程中統(tǒng)計的

25、指令速度。在計算機發(fā)展的早期,用加法指令的運算速度來衡量計算機的速度。后來發(fā)展成為等效指令速度法或吉普森(Gibson)法,在這種方法中,通常加、減法指令占50%,乘法指令占15%,除法指令占5%,程序控制指令占15%,其他指令占15%.例如,我國最早研制的小型計算機DJS-130,定點16位,加法速度每秒50萬次,但沒有硬件乘法和除法等指令。用軟件實現(xiàn)乘法和除法,速度降低100倍左右,則其等效指令速度為 即每秒2萬次,由于乘法和除法用軟件實現(xiàn),等效速度降低了25倍。又如,如果浮點開平方操作FPSQR的比例為2%,它的CPI為100,其他浮點操作的比例為23%,它的CPI=4.0,其

26、余指令的CPI=1.33,則該處理機的等效CPI為:如果FPSQR操作的CPI也為4.0,則其等效CPI為:由于改進了僅占2%的FPSQR操作的CPI,使等效速度提高了近一倍。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日性能設計4.3 性能設計本節(jié)主要討論如何進行系統(tǒng)性能調整、負載均衡等方面的知識。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介&#

27、183; 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日系統(tǒng)性能調整4.3.1 系統(tǒng)性能調整性能調整是與性能管理相關的主要活動。當性能降到最基本的水平時,性能調整由查找和消除瓶頸組成,瓶頸是在服務器中的某個硬件或軟件接近其容量限制時發(fā)生和顯示出來的情況。對于不同的系統(tǒng),其調整參數(shù)也不盡相同。對于數(shù)據(jù)庫系統(tǒng),主要包括CPU/內存使用狀況、優(yōu)化數(shù)據(jù)庫設計、優(yōu)化數(shù)據(jù)庫管理以及進程/線程狀態(tài)、硬盤剩余空間、日志文件大小等;對于應用系統(tǒng),主要包括應用系統(tǒng)的可用性、響應時

28、間、并發(fā)用戶數(shù)以及特定應用的系統(tǒng)資源占用等。在開始性能調整循環(huán)之前,必須做一些準備工作,為正在進行的性能調整活動建立框架。應該:(1)識別約束。站點的業(yè)務實例確定優(yōu)先級,而優(yōu)先級又設立邊界。約束(如可維護性和預算限制)在尋求更高的性能方面是不可改變的因素。必須將尋求性能提高的努力集中在不受約束的因素上。(2)指定負載。這涉及確定站點的客戶端需要哪些服務,以及對這些服務的需求程度。用于指定負載的最常用度量標準是客戶端數(shù)目、客戶端思考時間以及負載分布狀況。其中客戶端思考時間是指客戶端接收到答復到后面提交新請求之間的時間量,負載分布狀況包括穩(wěn)定或波動負載、平均負載和峰值負載。(3)設置性能目標。性能

29、目標必須明確,包括識別用于調整的度量標準及其對應的基準值??偟南到y(tǒng)吞吐量和響應時間是用于測量性能的兩個常用度量標準。識別性能度量標準后,必須為每個度量標準建立可計量的基準值與合理的基準值。建立了性能調整的邊界和期望值后,可以開始調整循環(huán),這是一系列重復的受控性能試驗。1.調整循環(huán)重復圖4-1所示的4個調整循環(huán)階段,直到獲得在開始調整過程前建立的性能目標。圖4-1  調整循環(huán)2.收集收集階段是任何調整操作的起點。在此階段,只使用為系統(tǒng)特定部分選擇的性能計數(shù)器集合來收集數(shù)據(jù)。這些計數(shù)器可用于網(wǎng)絡、服務器或后端數(shù)據(jù)庫。不論調整的是系統(tǒng)的哪一部分,都需要根據(jù)基準測量來比較性能的改變。需要建立

30、系統(tǒng)空閑以及系統(tǒng)執(zhí)行特定任務時的系統(tǒng)行為模式。因此,可以使用第一遍數(shù)據(jù)收集來建立系統(tǒng)行為值的基準集?;鶞式⒃谙到y(tǒng)的行為令人滿意時應該看到的典型計數(shù)器值。希賽教育專家提示:基準性能是一個主觀的標準,必須設置適合于工作環(huán)境且能最好地反映系統(tǒng)工作負荷和服務需求的基準。3.分析收集了調整選定系統(tǒng)部分所需的性能數(shù)據(jù)后,需要對這些數(shù)據(jù)進行分析以確定瓶頸。記住,性能數(shù)字僅具有指示性,它并不一定就可以確定實際的瓶頸在哪里,因為一個性能問題可能由多個原因所致。某個系統(tǒng)組件的問題是由另一系統(tǒng)組件的問題導致的,這種情況也很普遍。內存不足是這種情況的最好示例,它表現(xiàn)為磁盤和處理器使用的增加。以下幾點來自"

31、Microsoft Windows 2000資源工具包",提供了解釋計數(shù)器值和消除可能導致設置不適當?shù)恼{整目標值的錯誤數(shù)據(jù)或誤導數(shù)據(jù)的指南。(1)監(jiān)視名稱相同的進程。監(jiān)視某個實例而沒有監(jiān)視另一個實例的異乎尋常大的值。有時,系統(tǒng)監(jiān)視器將多個實例的組合值報告為單個實例的值,這就錯誤地報告了同名進程的不同實例的數(shù)據(jù)??赏ㄟ^按進程標志符對進程進行跟蹤來解決此問題。(2)監(jiān)視多個線程。當監(jiān)視多個線程而其中一個線程停止時,一個線程的數(shù)據(jù)可能被報告成了另一個線程的數(shù)據(jù)。這是由于線程的編號方式所導致的??赏ㄟ^將進程線程的線程標志符包含在日志或顯示中來解決此問題。為此,請使用"線程/線程ID

32、"計數(shù)器。(3)數(shù)據(jù)值中的不連續(xù)峰值。不必太重視數(shù)據(jù)中偶爾出現(xiàn)的峰值。這些峰值可能是由于進程的啟動,并不是該進程隨時間改變的計數(shù)器值的準確反映。尤其是平均計數(shù)器可以導致峰值隨時間停留的效果。(4)監(jiān)視一段延長的時期。建議使用圖形代替報告或直方圖,因為后兩種視圖僅顯示最后的值和平均值。結果,當查找峰值時,可能得不到這些值的準確反映。(5)排除啟動事件。除非有特殊的原因需要將啟動事件包含在數(shù)據(jù)中,否則排除這些事件,因為它們產(chǎn)生的臨時性高峰值往往歪曲了整體性能結果。(6)零值或缺少的數(shù)據(jù)。調查所有出現(xiàn)的零值或缺少的數(shù)據(jù)。這些零值或缺少的數(shù)據(jù)會妨礙建立有意義的基準。4.配置收集了數(shù)據(jù)并完成結

33、果分析后,可以確定系統(tǒng)的哪部分最適合進行配置更改,然后實現(xiàn)此更改。實現(xiàn)更改的最重要規(guī)則是:一次僅實現(xiàn)一個配置更改??雌饋砼c單個組件相關的問題可能是由涉及多個組件的瓶頸導致的。因此,分別處理每個問題很重要。如果同時進行多個更改,將不可能準確地評定每次更改的影響。5.測試實現(xiàn)了配置更改后,必須完成適當級別的測試,確定更改對調整的系統(tǒng)所產(chǎn)生的影響。在這一點上,這是確定更改是否有如下影響的問題:(1)性能提高。更改提高了性能嗎?如果是,提高了多少?(2)性能下降。更改在其他位置導致了瓶頸嗎?(3)對性能沒有影響。更改對性能到底有何顯著的影響?如果幸運,性能提高到預期的水平,這時便可以退出。如果不是這樣

34、,則必須重新逐步進行調整循環(huán)。測試時務必要檢查用于測試的應用程序的正確性和性能,查找內存泄露和不正常的客戶端請求響應延遲;確保所有測試都正常進行;確??梢允褂孟嗤氖聞栈旌虾拖嗤目蛻舳松上嗤呢撦d來重復所有測試;文檔更改和結果。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日阿姆達爾解決方案4.3.2 阿姆達爾解決方案阿姆達爾(Amdahl)定律是這樣的:系統(tǒng)中對某部件采用

35、某種更快執(zhí)行方式,所獲得的系統(tǒng)性能的改變程度,取決于這種方式被使用的頻率,或所占總執(zhí)行時間的比例。阿姆達爾定律定義了采用特定部件所取得的加速比。假定使用某種增強部件,計算機的性能就會得到提高,那么加速比就是下式所定義的比率:加速比反映了使用增強部件后完成一個任務比不使用增強部件完成同一任務加快了多少。阿姆達爾定律為計算某些情況下的加速比提供了一種便捷的方法。加速比主要取決于兩個因素:(1)在原有的計算機上,能被改進并增強的部分在總執(zhí)行時間中所占的比例。這個值稱之為增強比例,它永遠小于等于1.(2)通過增強的執(zhí)行方式所取得的改進,即如果整個程序使用了增強的執(zhí)行方式,那么這個任務的執(zhí)行速度會有多少

36、提高,這個值是在原來條件下程序的執(zhí)行時間與使用增強功能后程序的執(zhí)行時間之比。原來的機器使用了增強功能后,執(zhí)行時間等于未改進部分的執(zhí)行時間加上改進部分的執(zhí)行時間:版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日負載均衡4.3.3 負載均衡負載均衡是由多臺服務器以對稱的方式組成一個服務器集合,每臺服務器都具有等價的地位,都可以單獨對外提供服務而無須其他服務器的輔助。通過某種負載分擔

37、技術,將外部發(fā)送來的請求均勻地分配到對稱結構中的某一臺服務器上,而接收到請求的服務器獨立地回應客戶的請求。當用戶發(fā)現(xiàn)Web站點負載量非常大時,應當考慮使用負載均衡技術來將負載平均分攤到多個內部服務器上。如果有多個服務器同時執(zhí)行某一個任務時,這些服務器就構成一個集群(clustering)。使用集群技術可以用最少的投資獲得接近于大型主機的性能。1.負載均衡技術的類型目前,比較常用的負載均衡技術主要有以下幾種:(1)基于特定服務器軟件的負載均衡。很多網(wǎng)絡協(xié)議都支持"重定向"功能,例如,在HTTP協(xié)議中支持Location指令,接收到這個指令的瀏覽器將自動重定向到Location

38、指明的另一個URL上。由于發(fā)送Location指令比起執(zhí)行服務請求,對Web服務器的負載要小的多,因此可以根據(jù)這個功能來設計一種負載均衡的服務器。當Web服務器認為自己負載較大的時候,它就不再直接發(fā)送回瀏覽器請求的網(wǎng)頁,而是送回一個Location指令,讓瀏覽器在服務器集群中的其他服務器上獲得所需要的網(wǎng)頁。在這種方式下,服務器本身必須支持這種功能,然而具體實現(xiàn)起來卻有很多困難。例如,一臺服務器如何能保證它重定向過的服務器是比較空閑的,并且不會再次發(fā)送Location指令?Location指令和瀏覽器都沒有這方面的支持能力,這樣很容易在瀏覽器上形成一種死循環(huán)。因此這種方式實際應用當中并不多見,使

39、用這種方式實現(xiàn)的服務器集群軟件也較少。有些特定情況下可以使用CGI(包括使用FastCGI或mod_perl擴展來改善性能)來模擬這種方式去分擔負載,而Web服務器仍然保持簡潔、高效的特性。此時,避免Location循環(huán)的任務將由用戶的CGI程序來承擔。(2)基于DNS(Domain Name Server,域名服務器)的負載均衡。通過DNS服務中的隨機名字解析來實現(xiàn)負載均衡,在DNS服務器中,可以為多個不同的地址配置同一個名字,而最終查詢這個名字的客戶機將在解析這個名字時得到其中一個地址。因此,對于同一個名字,不同的客戶機會得到不同的地址,它們也就訪問不同地址上的Web服務器,從而達到負載均

40、衡的目的。DNS負載均衡的優(yōu)點是簡單、易行,并且服務器可以位于互聯(lián)網(wǎng)的任意位置上,當前使用在包括Yahoo在內的Web站點上。然而它也存在不少缺點,一個缺點是為了保證DNS數(shù)據(jù)及時更新,一般都要將DNS的刷新時間設置得較小,但太小就會造成太大的額外網(wǎng)絡流量,并且更改了DNS數(shù)據(jù)之后也不能立即生效;第二點是DNS負載均衡無法得知服務器之間的差異,它不能做到為性能較好的服務器多分配請求,也不能了解到服務器的當前狀態(tài),甚至會出現(xiàn)客戶請求集中在某一臺服務器上的偶然情況。(3)反向代理負載均衡。使用代理服務器可以將請求轉發(fā)給內部的Web服務器,使用這種加速模式顯然可以提升靜態(tài)網(wǎng)頁的訪問速度。因此也可以考

41、慮使用這種技術,讓代理服務器將請求均勻地轉發(fā)給多臺內部Web服務器,從而達到負載均衡的目的。這種代理方式與普通的代理方式有所不同,標準代理方式是客戶使用代理訪問多個外部Web服務器,而這種代理方式是多個客戶使用它訪問內部Web服務器,因此也被稱為反向代理模式。實現(xiàn)這個反向代理能力并不能算是一個特別復雜的任務,但是在負載均衡中要求特別高的效率,這樣實現(xiàn)起來就不是十分簡單的了。每針對一次代理,代理服務器就必須打開兩個連接,一個為對外的連接,一個為對內的連接。因此,當連接請求數(shù)量非常大的時候,代理服務器的負載也就非常之大了,最后,反向代理服務器會成為服務的瓶頸。例如,使用Apache的mod_rpr

42、oxy模塊來實現(xiàn)負載均衡功能時,提供的并發(fā)連接數(shù)量受Apache本身的并發(fā)連接數(shù)量的限制。一般來講,可以使用它來對連接數(shù)量不是特別大,但每次連接都需要消耗大量處理資源的站點進行負載均衡,例如搜尋。使用反向代理的好處是,可以將負載均衡和代理服務器的高速緩存技術結合在一起,提供有益的性能,具備額外的安全性,外部客戶不能直接訪問真實的服務器。并且實現(xiàn)起來可以采用較好的負載均衡策略,將負載非常均衡地分給內部服務器,不會出現(xiàn)負載集中到某個服務器的偶然現(xiàn)象。(4)基于NAT(Network Address Translation,網(wǎng)絡地址轉換)的負載均衡技術。網(wǎng)絡地址轉換指的是在內部地址和外部地址之間進行

43、轉換,以便具備內部地址的計算機能訪問外部網(wǎng)絡,而當外部網(wǎng)絡中的計算機訪問地址轉換網(wǎng)關擁有的某一外部地址時,地址轉換網(wǎng)關能將其轉發(fā)到一個映射的內部地址上。因此如果地址轉換網(wǎng)關能將每個連接均勻轉換為不同的內部服務器地址,此后,外部網(wǎng)絡中的計算機就各自與自己轉換得到的地址上服務器進行通信,從而達到負載分擔的目的。地址轉換可以通過軟件方式來實現(xiàn),也可以通過硬件方式來實現(xiàn)。使用硬件方式進行操作一般稱為交換,而當交換必須保存TCP連接信息的時候,這種針對OSI/RM網(wǎng)絡層的操作就被稱為第四層交換。支持負載均衡的網(wǎng)絡地址轉換為第四層交換機的一種重要功能,由于它基于定制的硬件芯片,因此其性能非常優(yōu)秀,很多交換

44、機聲稱具備400MB800MB的第四層交換能力,然而也有一些資料表明,在如此快的速度下,大部分交換機就不再具備第四層交換能力了,而僅僅支持第三層甚至第二層交換。使用軟件方式來實現(xiàn)基于網(wǎng)絡地址轉換的負載均衡則要實際得多,除了一些廠商提供的解決方法之外,更有效的方法是使用免費的自由軟件來完成這項任務。其中包括Linux Virtual Server Project中的NAT實現(xiàn)方式。一般來講,使用這種軟件方式來實現(xiàn)地址轉換,中心負載均衡器存在帶寬限制,在100MBps的快速以太網(wǎng)條件下,能得到最高達80MBps的帶寬,然而在實際應用中,可能只有40MBps60MBps的可用帶寬。(5)擴展的負載均

45、衡技術。上面使用網(wǎng)絡地址轉換來實現(xiàn)負載分擔,毫無疑問所有的網(wǎng)絡連接都必須通過中心負載均衡器,那么如果負載特別大,以至于后臺的服務器的數(shù)量不再在是幾臺、十幾臺,而是上百臺甚至更多,這時,即便是使用性能優(yōu)秀的硬件交換機也會遇到瓶頸。此時問題將轉變?yōu)椋绾螌⒛敲炊嗯_服務器分布到各個互聯(lián)網(wǎng)的多個位置,分散網(wǎng)絡負擔。當然這可以通過綜合使用DNS和NAT兩種方法來實現(xiàn),然而更好的方式是使用一種半中心的負載均衡方式。在這種半中心的負載均衡方式下,即當客戶請求發(fā)送給負載均衡器的時候,中心負載均衡器將請求打包并發(fā)送給某個服務器,而服務器的回應請求不再返回給中心負載均衡器,而是直接返回給客戶,因此中心負載均衡器只

46、負責接受并轉發(fā)請求,其網(wǎng)絡負擔就較小了。2. 服務器負載均衡服務器負載均衡一般用于提高服務器的整體處理能力,并提高可靠性、可用性和可維護性,最終目的是加快服務器的響應速度,從而提高用戶的體驗度。負載均衡從結構上分為本地負載均衡(Local Server Load Balance)和全域負載均衡(Global Server Load Balance,全局負載均衡),前者是指對本地的服務器群作負載均衡,后者是指對分別放置在不同的地理位置、有不同的網(wǎng)絡及服務器群之間作負載均衡。全域負載均衡有以下的特點:(1)解決網(wǎng)絡擁塞問題,服務就近提供,實現(xiàn)地理位置無關性;(2)對用戶提供更好的訪問質量;(3)提

47、高服務器響應速度;(4)提高服務器及其他資源的利用效率;(5)避免了數(shù)據(jù)中心單點失效。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日性能評估4.4 性能評估性能評估是對一個系統(tǒng)進行各項檢測,并形成一份直觀的文檔,因此性能評估是通過各項測試來完成的。評估的一個目的是為性能的優(yōu)化提供參考,而性能優(yōu)化涉及的面很廣,也很復雜,而且永無止境。對于不同的應用程序,優(yōu)化的方法會有一些區(qū)別。

48、版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日基準測試程序4.4.1 基準測試程序把應用程序中用得最多、最頻繁的那部分核心程序作為評價計算機性能的標準程序。稱為基準測試程序(benchmark)。(1)整數(shù)測試程序:Dhrystone.用C語言編寫,100條語句。包括:各種賦值語句,各種數(shù)據(jù)類型和數(shù)據(jù)區(qū),各種控制語句,過程調用和參數(shù)傳送,整數(shù)運算和邏輯操作。VAX-11/78

49、0z的測試結果為每秒1757個Dhrystones,即:1VAX MIPS=1757 Dhrystones/s(2)浮點測試程序:Linpack.用FORTRAN語言編寫,主要是浮點加法和浮點乘法操作。用MFLOPS(Million Floating Point Operations Per Second)表示GFLOPS、TFLOPS.(3)Whetstone基準測試程序。用FORTRAN語言編寫的綜合性測試程序,主要包括:浮點運算、整數(shù)算術運算、功能調用、數(shù)組變址、條件轉移、超越函數(shù)。測試結果用Kwips表示。(4)SPEC基準測試程序。SPEC基準測試程序(System performa

50、nce evaluation Cooperative,系統(tǒng)性能評估聯(lián)盟)由30個左右世界知名計算機大廠商所支持的非盈利的合作組織,包括IBM、AT&T、BULL、Compaq、CDC、DG、DEC、Fujitsu、HP、Intel、MIPS、Motolola、SGI、SUN、Unisys等;SPEC能夠全面反映機器的性能,具有很高的參考價值。SPEC以AX-11/780的測試結果作為基數(shù),當前主要的基準測試程序有SPEC int_base_rate 2000、SPEC fp_base_rate 2000和SPEC JBB 2000等。還有基于某種數(shù)據(jù)庫運行環(huán)境下的測試,也是可以參考的數(shù)

51、值。在采用通用基準測試程序時,要注意真實的業(yè)務流程和使用環(huán)境與通用測試基準的業(yè)務流程和使用環(huán)境的異同,這樣,基準測試值才有參考價值。(5)TPC基準程序。TPC(Transaction Processing Council,事務處理委員會)成立于1988年,已有40多個成員,用于評測計算機的事務處理、數(shù)據(jù)庫處理、企業(yè)管理與決策支持等方面的性能。1989年以來相繼發(fā)表的TPC基準測試程序包括TPC-A、TPC-B、TPC-C、TPC-D、TPC-H和TPC-W等。其中TPC-A用于在線聯(lián)機事務處理下更新密集的數(shù)據(jù)庫環(huán)境下的性能測試,TPC-B用于數(shù)據(jù)庫系統(tǒng)及運行它的操作系統(tǒng)的核心性能測試,TPC

52、-C則用于在線聯(lián)機事務處理測試,TPC-D用于決策支持系統(tǒng)測試,TPC-H是基于TPC-D基礎上決策支持基準測試,還有TPC-W是用于電子商務應用軟件測試。TPC-C是衡量OLTP系統(tǒng)的工業(yè)標準。它測試廣泛的數(shù)據(jù)庫功能,包括查詢、更新和排隊袖珍型批處理(mini-batch)事務。這一規(guī)范在關鍵領域十分嚴格,如數(shù)據(jù)庫透明性和事務處理隔離性。許多IT專家把TPC-C作為"真實世界"OLTP系統(tǒng)性能的一個很好的指示器。獨立審核員認證基準測試(benchmark)的結果,TPC還有全套的公開報告。(6)Linpack測試。Linpack是國際上最流行的用于測試高性能計算機系統(tǒng)浮點

53、性能的測試。通過對高性能計算機采用高斯消元法求解一元N次稠密線性代數(shù)方程組的測試,評價高性能計算機的浮點性能。Linpack測試包括三類,Linpack100、Linpack1000和HPL.Linpack100求解規(guī)模為100階的稠密線性代數(shù)方程組,它只允許采用編譯優(yōu)化選項進行優(yōu)化,不得更改代碼,甚至代碼中的注釋也不得修改。Linpack1000要求求解1000階的線性代數(shù)方程組,達到指定的精度要求,可以在不改變計算量的前提下做算法和代碼上的優(yōu)化。HPL即High Performance Linpack,也叫高度并行計算基準測試,它對數(shù)組大小N沒有限制,求解問題的規(guī)模可以改變,除基本算法(計

54、算量)不可改變外,可以采用其他任何優(yōu)化方法。前兩種測試運行規(guī)模較小,已不是很適合現(xiàn)代計算機的發(fā)展。HPL是針對現(xiàn)代并行計算機提出的測試方式。用戶在不修改任意測試程序的基礎上,可以調節(jié)問題規(guī)模的大小(矩陣大?。⑹褂肅PU數(shù)目、使用各種優(yōu)化方法等來執(zhí)行該測試程序,以獲取最佳的性能。HPL采用高斯消元法求解線性方程組。求解問題規(guī)模為N時,浮點運算次數(shù)為。因此,只要給出問題規(guī)模N,測得系統(tǒng)計算時間T,峰值=計算量( )/計算時間T,測試結果以浮點運算每秒(Flops)給出。HPL測試結果是TOP500排名的重要依據(jù)。版權方授權希賽網(wǎng)發(fā)布,侵權必究· 上一節(jié)· 本書簡介· 下一節(jié)第 4 章:系統(tǒng)性能評價作者:希賽教育軟考學院    來源:希賽網(wǎng)    2014年04月18日Web服務器的性能評估4.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論