系統(tǒng)架構設計師考前背誦【北京-王者】_第1頁
系統(tǒng)架構設計師考前背誦【北京-王者】_第2頁
系統(tǒng)架構設計師考前背誦【北京-王者】_第3頁
系統(tǒng)架構設計師考前背誦【北京-王者】_第4頁
系統(tǒng)架構設計師考前背誦【北京-王者】_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、系統(tǒng)架構設計師案例分析考點軟件架構風格(重點,今年案例可能考)定義:軟件架構風格是描述某一特定應用領域中系統(tǒng)組織方式的慣用模式。架構風格定義一個系統(tǒng)家族,即一個體系結構定義一個詞匯表和一組約束。詞匯表中包含一些構件和連接件類型, 而這組約束指出系統(tǒng)是如何將這些構件和連接件組合起來的。6KX-空舊岳.底包工航反把架構風格大類架構小類構件;連接件數(shù)據(jù)流風格批處理序列計算單元管理過濾器過濾器數(shù)據(jù)流傳輸?shù)墓艿勒{(diào)用/返回風格主/子程序主子程序過程調(diào)用向向?qū)ο髮ο髮ο箝g的交付方式層次結構每一層層間的交付方式獨立構件進程通信獨立的進程消息傳遞事件驅(qū)動模塊讖調(diào)用1倉庫風格黑板系統(tǒng)知識源黑板系統(tǒng)或數(shù)據(jù)庫系統(tǒng)1顰

2、構風格主好點主委優(yōu)點I主要裝點適合領域女弗欣愜立0M慢k周.可值護性相可于雇 性空4 M有開曲1 ;般厘如忤,擊于空互包翻崛用; 卜1于行燈歷蹣噓流 陋sm蚪1系統(tǒng)司劃啟茂新的幔境: 懵暝相對皿:桿押的1塊理口面向?qū)μ傥矙E力爭實堀問B空自知較停系強他的眥I 政性艮活:翻地護.sjrftTiwmDTJL2fWfiM ptK.仔沙就填單杵算功即搐泉統(tǒng)由君干子鬼熨溝俎旦質(zhì)為TIB* ; M 睨打吧 型目柄,孑品螳號生MN分;斫 品做有fi己的摩畤也集般理機制斌.:|(一t 篇【匚j封為胡聯(lián)?潮所以福施 了對*統(tǒng)計*的甘豐肝 力:各個對的理位策 股修T原先用外S3的奧心可 以M它對不料的3 表征田更分

3、層鳳博限刊8淮幽*招成和功幄疆皖曲a機 羅層都耳悔聞工作.而由0 明克特系蛻設計世羽中的*怛曲審 時盾陋到則麗不胃顯次之閽*宜高 河事灶很灘或玩僦臺動博耳次fl鼬腳Dffi 互之同低*臺的制嫌It矚提子及懵三用葩個常當向牛牛安舐單元用T.用仃 在立削田仲典哲中央效用單亓或3T露的隹中 上敢摳為中忙,道合于鞘宏第利牌風珞靠雌心電虛黑機可以用亨腫錯行視J第f句子M活應時打定義哥景醫(yī)合手普搬域通合工樽超配承航向 育案毒罪閉環(huán)控制阿格展過不由地菸根!控河拿,認識和掌控嚏投 ,愉潮州盛沱亨1人體系/雄斑更曖主引入1必十算也城忤缽鼎 勢啊中面合于特定轉(zhuǎn)域*蓊*中f存在口標 的杵月,宿左怔理閉環(huán) 檢制過程1

4、 數(shù)據(jù)流風格? 批處理序列(口決記憶法:構構每每數(shù)以)定義:構建為一序列 固定順序 的計算單元, 構建之間只通過數(shù)據(jù)傳遞 進行交付, 每個處理步驟是一個獨立的程序,每一步必須在其前一步結束后才能開始, 數(shù)據(jù)必須是完整的, 以 整體 的方式 進行傳遞特點:強調(diào)整體性,無交互? 管理過濾器(口決記憶法:每構經(jīng)然,變換三通)定義:每個構建都有一組 輸入、 輸出, 構建 讀輸入 的數(shù)據(jù)流, 經(jīng)過 內(nèi)部處理 , 然后 產(chǎn)生輸出 數(shù)據(jù)流,這個過程通常是通過對輸入數(shù)據(jù)流的 變換或計算來完成的,包括:? 通過計算和增加信息以 豐富數(shù)據(jù)? 通過濃縮和刪除以 精簡數(shù)據(jù)? 通過改變記錄方式以轉(zhuǎn)化數(shù)據(jù)和遞增的 轉(zhuǎn)化數(shù)

5、據(jù)構建為過濾器,連接件是數(shù)據(jù)流傳輸?shù)墓艿捞攸c: 不適合處理交互式應用2 調(diào)用 / 返回風格? 主程序 / 子程序(理解記憶法)定義:所有的計算構件作為子程序協(xié)作工作, 并由一個主程序順序地調(diào)用這些子程序, 構件通過共享存儲區(qū)交換數(shù)據(jù)。調(diào)用關系具有層次性, 其語義邏輯表現(xiàn)為主程序的正確性取決于它調(diào)用的子程序的正確性構件為主程序和子程序,連接件是過程調(diào)用? 面向?qū)ο螅ɡ斫庥洃浄ǎ┒x:建立在數(shù)據(jù)抽象和面向?qū)ο蟮幕A上,數(shù)據(jù)的表示和它們的相應操作被封裝起來。構件是對象, 對象是抽象數(shù)據(jù)類型的實例, 對象之間通過消息機制進行通信, 連接件是對象間的交付方式。? 層次結構(理解記憶法)定義:每層為上層提

6、供服務,并使用下層提供的服務,一般中間層只對相鄰層可見。構件組成一個層次結構,連接件通過層間交互的協(xié)議來定義。3 獨立構件風格? 進程通信(理解記憶法)定義:構件通常是命名過程, 消息傳遞可以是點對點、 異步或同步方式、 以及遠程過程調(diào)用等。構件是獨立的進程,連接件是消息傳遞? 事件驅(qū)動系統(tǒng)(隱式調(diào)用)(理解記憶法) 定義:構件不直接調(diào)用一個過程, 而是觸發(fā)或廣播一個或多個事件。 構件中的過程在一個或多個事件中注冊,當某個事件被觸發(fā),系統(tǒng)自動調(diào)用在這個事件上注冊的所有過程。構件是一些模塊,這些模塊可以是過程或事件。連接件以過程之間的隱式調(diào)用來實現(xiàn)。優(yōu)點:增加架構的靈活性 缺點:構件放棄了對系統(tǒng)

7、計算的控制共享數(shù)據(jù)問題4 虛擬機風格? 解釋器(需要自定義業(yè)務流程的場景)(理解記憶法)定義:包括一個完成解釋工作的解釋引擎, 一個記錄解釋引擎當前工作狀態(tài)的數(shù)據(jù)結構, 一個包含將被解釋代碼的存儲區(qū),以及一個記錄源代碼被解釋執(zhí)行進度的數(shù)據(jù)結構。含有一個虛擬機 缺點:執(zhí)行效率較低? 基于規(guī)則的系統(tǒng)(通過數(shù)據(jù)分析,產(chǎn)生決策需要的數(shù)據(jù))(理解記憶法)包括規(guī)則集、規(guī)則解釋器、規(guī)則 / 數(shù)據(jù)選擇器和工作內(nèi)存5 倉庫風格? 數(shù)據(jù)庫系統(tǒng)(類似于目前的多個微服務開發(fā),連共享數(shù)據(jù)庫操作)(理解記憶法)定義:中央共享數(shù)據(jù)庫,保存當前系統(tǒng)的數(shù)據(jù)狀態(tài)、多個獨立處理單元,對數(shù)據(jù)元素進行操作? 黑板系統(tǒng)(信號處理、問題規(guī)

8、劃、編譯器優(yōu)化、語音識別)(強行記憶) 定義:由知識源,黑板數(shù)據(jù)結構,控制 3 部分組成。黑板數(shù)據(jù)即共享的中央數(shù)據(jù)倉庫;控制完全由黑板的狀態(tài)驅(qū)動, 黑板狀態(tài)決定使用特定的知識源; 知識源通過不斷改變黑板數(shù)據(jù)來解決問題。構件是中央數(shù)據(jù)結構和外部獨立構件即知識源。連接子取決于控制原則的選取,若外部構件控制共享數(shù)據(jù),則倉庫是傳統(tǒng)型數(shù)據(jù)庫;若共享數(shù)據(jù)當前狀態(tài)觸發(fā)控制外部構件, 則倉庫是黑板系統(tǒng)。? 超文本系統(tǒng)(強行記憶)定義:構件以網(wǎng)狀鏈接方式相互連接用戶可以在構件之間進行按照人類聯(lián)想思維的方式任意跳轉(zhuǎn)到相關構件。超文本以節(jié)點為單位6閉環(huán)控制(過程控制)定義:反饋循環(huán)機制是將過程輸出的指定屬性維護在一

9、個特定的參考值(設定點)??刂骗h(huán)路風格包括輸入變量、設定點、操縱變量、過程變量和被控變量等構件,通過收集實際和理想的過程狀態(tài)信息,并能調(diào)整過程變量使得實際狀態(tài)趨于理想狀態(tài)。7主程序/子程序與管道-過濾器的比較蒙梅風幡北事收的主刑序子程序道道冬*法麥更功能交里(2) /摘展示殳更(3)性能(S) ()-各種圖形1順序圖定義:是一種交互圖,強調(diào)對象之間消息發(fā)送的順序,同時顯示對象之間的交互。2活動圖定義:將進程或其他計算結構展示為計算內(nèi)部一步步的控制流和數(shù)據(jù)流,強調(diào)對象間的控制流程?;顒訄D可以用于描述系統(tǒng)的工作流程和并發(fā)行為?;顒訄D中一個活動結束后將立即進入下一個活動(在狀態(tài)圖中狀態(tài)的轉(zhuǎn)移可能需要

10、事件的觸發(fā))?;顒訄D側(cè)重描述行為的動作3 狀態(tài)圖定義: 狀態(tài)圖主要用于描述一個對象在其生存期間的動態(tài)行為, 表現(xiàn)一個對象所經(jīng)歷的狀態(tài)序列,引起狀態(tài)轉(zhuǎn)移的事件( event ),以及因狀態(tài)轉(zhuǎn)移而伴隨的動作( action )。側(cè)重于描述行為的結果狀態(tài)圖與活動圖的區(qū)別:狀態(tài)圖側(cè)重于描述行為的結果, 而活動圖側(cè)重描述行為的動作。 其次活動圖可描述并發(fā)行為,而狀態(tài)圖不能。通信圖(了解)定義: 通信圖也是一種交互圖,它強調(diào)收發(fā)消息的對象或參與者的結構組織。通信圖與順序圖的區(qū)別: 順序圖強調(diào)的是時序, 而通信圖強調(diào)的是對象之間的組織結構 (或關系)。流程圖流程圖以圖形化的方式展示應用程序從數(shù)據(jù)輸入開始到獲

11、得輸出為止的邏輯過程, 描述 處理過程的控制流。數(shù)據(jù)流圖定義數(shù)據(jù)流圖作為一種圖形化工具, 用來說明業(yè)務處理過程、 系統(tǒng)邊界內(nèi)所包含的功能和系統(tǒng)中的數(shù)據(jù)流。數(shù)據(jù)流圖通過外部代理 (實體) 描述系統(tǒng)與外界之間的數(shù)據(jù)交互關系, 內(nèi)部的活動通過處理(加工) 表示, 用數(shù)據(jù)流描述系統(tǒng)中不同活動之間的數(shù)據(jù)傳輸內(nèi)容和方向, 需要持久化存儲的數(shù)據(jù)用數(shù)據(jù)存儲表示,一般用文件系統(tǒng)或者數(shù)據(jù)庫表存儲數(shù)據(jù)-數(shù)據(jù)流圖中所包含的四種元素:外部實體( External Agent) 定義位于項目范圍之外,但與正在被研發(fā)的系統(tǒng)有交互關系的人、部門、外部系統(tǒng)或組織;加工 ( Process) 在輸入數(shù)據(jù)流或條件上執(zhí)行, 或者對輸

12、入數(shù)據(jù)流或條件做出響應的工作;數(shù)據(jù)存儲( Data Store) 描述靜止的數(shù)據(jù),表示系統(tǒng)中需要保存的數(shù)據(jù);數(shù)據(jù)流( Data Flow) 描述運動中的數(shù)據(jù),表示到一個過程的數(shù)據(jù)輸入,或者來自一個過程的數(shù)據(jù)輸出。數(shù)據(jù)流圖和流程圖的區(qū)別數(shù)據(jù)流圖中的處理過程可并行;流程圖在某個時間點只能處于一個處理過程。數(shù)據(jù)流圖展現(xiàn)系統(tǒng)的數(shù)據(jù)流;流程圖展現(xiàn)系統(tǒng)的控制流。數(shù)據(jù)流圖展現(xiàn)全局的處理過程,過程之間遵循不同的計時標準;流程圖中處理過程遵循一致的計時標準。數(shù)據(jù)流圖適用于系統(tǒng)分析中的邏輯建模階段; 流程圖適用于系統(tǒng)設計中的物理建模階段。數(shù)據(jù)流圖的常見錯誤實體 -加工 -數(shù)據(jù)存儲 -加工 -實體實體- 實體:X加

13、工- 加工:X數(shù)據(jù)存儲 -數(shù)據(jù)存儲: X實體 - 數(shù)據(jù)存儲: X數(shù)據(jù)存儲 -實體: X只有輸入沒有輸出,產(chǎn)生數(shù)據(jù)黑洞;只有輸出沒有輸入,無中生有;外部實體沒有經(jīng)過加工處理,直接到數(shù)據(jù)存儲 ;外部實體之間沒有加工處理,存在直接數(shù)據(jù)流。數(shù)據(jù)存儲沒有輸出的數(shù)據(jù)流。加工不能只進數(shù)據(jù)流,同樣也不能只出數(shù)據(jù)流實體與實體之間有數(shù)據(jù)流實體與數(shù)據(jù)存儲之間有數(shù)據(jù)流,存儲和存儲之間有數(shù)據(jù)流設計原則復雜性最小化原則。 接口最小化原則。 數(shù)據(jù)流一致性原則。類圖類圖的關系: 依賴、泛化、關聯(lián)(組合、聚合)、實現(xiàn)而關聯(lián)是一個類依賴和關聯(lián)的區(qū)別: 依賴是一個類中的某個方法使用了另一個類做為參數(shù),把另一個類做成成員變量。8用例

14、圖用例之間的關系:包含、擴展、泛化三軟件質(zhì)量屬性3.1常見的幾個質(zhì)量屬性定義性 ( performance )是指系統(tǒng)的響應箜力.即要經(jīng)過多長時間才能對某個事件做出響應,或者 在某段時間內(nèi)系硒能處理的事件的個數(shù).代表參數(shù):響應時間.吞吐量設計策略:優(yōu)先坂隊列、資源調(diào)度2,可靠性可靠性(reliability )是軟件系統(tǒng)在應用或系統(tǒng)錯誤面前,在意外商苜謀使用的情況下維持軟件系 統(tǒng)的功白弟性的基本能力.代表參數(shù):MTTF. MT3F設計策略:冗余.心跳線可用性(availability )是系蛻越夠正常運行的時尚比例.經(jīng)常用兩次故障之間的時間長度或在出現(xiàn) 故國寸系統(tǒng)能弟恢管正常的速度來表示,代表

15、卷數(shù):故障間隔時閭設計策略:冗余、心跳線安全件(security )是指系蛻在向合法用戶撥供服務的同時能夠阻止非授權用戶使用的企圖或拒納 服務的能力.安全性又可劃分為機密性、完整性.不可否認性及可控性等特性.設計策略:迫蹤審計|可律改性(modifiability)因昌蚓快速地以故高的性能價格比對系統(tǒng)遂行變更的能力.通常以某 些具飾的變更為基準,通過考察該必變事的代價衡艮可修改性.主要策略:信電隱蜀6.功能性功能性t functionality )是系統(tǒng)所能完成所期望的工作的能力.一項任務的完成需要系統(tǒng)中許多或 大備數(shù)構件的相互t辦作.7,可變性可變性(changeability )是指體系結

16、構經(jīng)獷充或變更而成為新體系結構的能力.這種新體系結梅 應該符合預先定義的規(guī)則.在某些具體方面不同于原有的體系結構,當要將某個體系結構作為一系列相 關產(chǎn)品(例如,軟件產(chǎn)品線)的星世時,可變性是很重要的.8.互掾柞性作為系統(tǒng)組成部分的軟件不是獨立存在的經(jīng)常與其他系統(tǒng)或自身環(huán)境相互作用.為了支持互操作 性interoperation ).軟村體系結構必須為外部可視的功能特性和數(shù)據(jù)結構握供精心設計的軟件入口. 程的嗝其他廓程語言蚓寫的軟件系例9交互作用就是互操作性的問題.這種互操作性也影響應用的軟 幡體系結構.風險點、敏感點、權衡點系統(tǒng)架構風險:架構設計中潛在的、存在問題的架構決策所帶來的隱患。敏感點

17、:為了實現(xiàn)某種特定的質(zhì)量屬性,一個或多個系統(tǒng)組件所具有的特性。 權衡點:影響多個質(zhì)量屬性,并對多個質(zhì)量屬性來說都是敏感點的系統(tǒng)屬性。常見場景對應的質(zhì)量屬性用戶的信用卡支付必須保證 99.999%的安全性,對應安全性屬性。用戶信息數(shù)據(jù)庫授權必須保證99.999%可用,對應安全性屬性。系統(tǒng)擬采用新的加密算法,這會提高系統(tǒng)安全性,但同時會降低系統(tǒng)的性能,系統(tǒng) 權衡點。對交易請求處理時間的要求將影響系統(tǒng)數(shù)據(jù)傳輸協(xié)議和交易處理過程的設計,對應系統(tǒng)敏感點?,F(xiàn)有架構設計中的支付部分與第三方支付平臺緊耦合,當系統(tǒng)需要支持新的支付平臺時,這種設計會導致支付部分代碼的修改, 影響系統(tǒng)的可修改性,對應系統(tǒng)風險。系統(tǒng)

18、需要為后端工程師提供遠程調(diào)試接口,并支持遠程調(diào)試,對應可測試性屬性。四安全做手證書0蠢劇C狀證)“普生軾痔征型L燮揩曾制DRU1強樹詩回挎利班U 。諦河捏制聚資 I0網(wǎng)絡黃全體邈應基于建色的潴司但和KsajC .數(shù)理里更旦虹魯完整性鵬善二遵過曩土證問0敕屬圣至機在;性玉等遭UF密理字笠里 e折抵理書名e素全4.1安全威脅信息系統(tǒng)面臨的安全威脅多種多樣,來自多個方面。請指出信息系統(tǒng)面臨哪些方面的安全威脅并分別予以簡要描述。信息系統(tǒng)面臨的安全威脅來自于管理、應用系統(tǒng)、通信鏈路、網(wǎng)絡系統(tǒng)、物理環(huán)境、操 作系統(tǒng)等多個方面。 口決:管應通,網(wǎng)物操物理安全威脅是指對系統(tǒng)所用設備的威脅,如自然災害、電源故障

19、、數(shù)據(jù)庫故障和設備被盜等造成數(shù)據(jù)丟失或信息泄漏。通信鏈路安全威脅是指在傳輸線路上安裝竊聽裝置或?qū)νㄐ沛溌愤M行干擾。網(wǎng)絡安全威脅當前主要是指由于因特網(wǎng)的開放性、 國際性與無安全管理性, 對內(nèi)部網(wǎng)絡形成的嚴重安全威脅。操作系統(tǒng)安全威脅指的是操作系統(tǒng)本身的后門或安全缺陷,如“木馬”和“陷阱 門”等。應用系統(tǒng)安全威脅是指對于網(wǎng)絡服務或用戶業(yè)務系統(tǒng)安全的威脅, 包括應用系統(tǒng)自身漏洞,也受到“木馬”的威脅。管理系統(tǒng)安全威脅指的是人員管理和各種安全管理制度。五 ESB定義企業(yè)服務總線(Enterprise Service Bus,ESB)是傳統(tǒng)中間件技術與 XML、Web服務等 技術結合的產(chǎn)物,主要支持異構

20、系統(tǒng)集成。ESB基于內(nèi)容的路由和過濾,具備復雜數(shù)據(jù)的傳輸能力,并可以提供一系列的標準接口。ESB 的主要功能服務位置透明性;傳輸協(xié)議轉(zhuǎn)換;消息格式轉(zhuǎn)換;消息路由;消息增強;安全性;監(jiān)控與管理。六可靠性版本建予段苫恢復決該計0容鑄技術1冗南收計e, 不靠性e可君任分步技術檢轉(zhuǎn)盤木 都復雜度制 一區(qū)鈍分析方烹 失歌果式與敷運分析萬法 運行班度 就件短模一一為定層構 3%一軟件可篦性的比素 默谷的開發(fā)方法網(wǎng)開發(fā)藥里/強件的胃堂在投入定義可靠性:是系統(tǒng)在規(guī)定的時間內(nèi)及規(guī)定的環(huán)境條件下,完成規(guī)定功能的能力, 也就是系統(tǒng)無故障運行的概率。可靠度:系統(tǒng)在規(guī)定的條件下、規(guī)定的時間內(nèi)不發(fā)生失效的概率。失效率:又

21、稱風險函數(shù),也可以稱為條件失效強度,是指運行至此刻系統(tǒng)未出現(xiàn)失效的情況下,單位時間系統(tǒng)出現(xiàn)失效的概率。檢錯技術請給出檢錯技術的優(yōu)缺點,并說明檢測技術常見的實現(xiàn)方式和處理方式。優(yōu)點:檢錯技術實現(xiàn)的代價一般低于容錯技術和冗余技術。缺點:就是不能自動解決故障,出現(xiàn)故障后如果不進行人工干預,將最終導致軟件系統(tǒng)不能正常運行。實現(xiàn)方式:(1)判斷返回結果,如果返回結果超出正常范圍,則進行異常處理;(2)計算運行時間,如果某個模塊或函數(shù)運行時間超過預期時間,可以判斷出現(xiàn)故障;(3)置狀態(tài)標志位。處理方式:大多數(shù)都采用“查出故障-停止軟彳運行-報警”的處理方式。但根據(jù)故障的不同情況,也有采用不停止或部分停止軟

22、件系統(tǒng)運行的情況,這一般由故障是否需要實時處理來決定。可靠性的子特性口決:成容(成龍)易依成熟性:成熟性是指系統(tǒng)避免因錯誤的發(fā)生而導致失效的能力;容錯性: 容錯性是指在系統(tǒng)發(fā)生故障或違反指定接口的情況下, 系統(tǒng)維持規(guī)定的性能級別的能力;易恢復性: 易恢復性是指系統(tǒng)發(fā)生失效的情況下, 重建規(guī)定的性能級別并恢復受直接影響的數(shù)據(jù)的能力;依從性:可靠性的依從性是指系統(tǒng)依附于與可靠性相關的標準、約定或規(guī)定的能力??煽啃阅P蜁r間模型 數(shù)據(jù)模型 故障植入模型可靠性設計原則軟件可靠性設計是軟件設計的一部分, 必須 在軟件的總體設計框架中使用 , 并且不能與其他設計原則沖突。軟件可靠性設計在滿足提高軟件質(zhì)量的前

23、提下,以提高和保障軟件可靠性為最終目標。( 軟件質(zhì)量是前提,可靠性為最終目標)軟件可靠性設計應確定軟件可靠性目標, 不能無限擴大化 , 并且 排在功能度、 用戶需求 和開發(fā)費用之后考慮??煽啃栽O計技術容錯設計( 4 后面的是我總結的)N 版本程序設計恢復塊設計冗余設計1 )時間冗余執(zhí)行出錯時, 循環(huán)執(zhí)行幾次, 以避免因網(wǎng)絡繁忙或抖動或資料被占用引起的失敗2 )結構冗余(硬件冗余、軟件冗余)3 )信息冗余(校驗碼)檢錯設計降低復雜度設計集群技術避錯設計 / 防衛(wèi)式程序設計6. 雙機容錯雙機熱備:主服務器正常時,備份服務器空閑 雙機互備:同時提供不同的服務,心不跳則接管 雙機雙工:同時提供相同的服

24、務,集群的一種主服務器正常時,備份服務器空閑 同時提供不同的服務,心不跳則接管 同時提供相同的服務,集群的一種影響可靠性的因素口決:剖規(guī)內(nèi)開可1.2.3.4.5.運行剖面(環(huán)境) 軟件規(guī)模 軟件內(nèi)部結構 軟件的開發(fā)方法和開發(fā)環(huán)境 軟件的可靠性投入可靠性分析技術故障樹分析方法一種自項向下的軟件可靠性分析方法,即從軟件系統(tǒng)不希望發(fā)生的事件 (頂事件) ,特別是對人員和設備的安全及可靠性產(chǎn)生重大影響的事件開始向下逐步追查導致事件發(fā)生的原因, 直至基本事件 (底事件)。 從而確定軟件故障原因的各種組合方式和發(fā)生概率。基本的步驟是軟件故障樹的建立、定性分析和定量分析。失效模式與效應分析方法在軟件開發(fā)階段

25、的早期, 通過識別軟件失效模式分析造成的后果。 研究分析各種失效模式生產(chǎn)的原因, 尋找消除和減少其有害后果的方法。 以便盡早發(fā)現(xiàn)潛在的問題, 并采取相應措施,從而提高軟件的可靠性和安全性。七 數(shù)據(jù)庫7.1 反規(guī)范化技術定義:規(guī)范化設計后,數(shù)據(jù)庫設計者希望犧牲部分規(guī)范化來提高性能,這種從規(guī)范化設計的回退方法叫做反規(guī)范化技術。優(yōu)點:反規(guī)范化設計允許保留或者新增一些冗余數(shù)據(jù), 從而減少數(shù)據(jù)查詢中表連接的數(shù)目或簡 化計算過程,提高數(shù)據(jù)訪問效率。采用反規(guī)范化技術的益處: 能夠 減少數(shù)據(jù)庫查詢時SQL 連接的數(shù) 目, 從而 減少磁盤 I/O數(shù) 據(jù)量, 提高查詢效率。缺點:數(shù)據(jù)的重復存儲, 浪費了磁盤空間;

26、 為了保障數(shù)據(jù)的一致性, 增加了數(shù)據(jù)維護的復雜性。常見的反規(guī)范化技術包括:增加冗余列: 在多個表中保留相同的列, 通過增加數(shù)據(jù)冗余減少或避免查詢時的連接操作;增加派生列: 在表中增加可以由本表或其他表中數(shù)據(jù)計算生成的列, 減少查詢時的連接操作并避免計算或使用集合函數(shù);表水平分割: 根據(jù)一列或多列數(shù)據(jù)的值, 把數(shù)據(jù)放到多個獨立的表中, 主要用于表數(shù)據(jù)規(guī)模很大、表中數(shù)據(jù)相對獨立或數(shù)據(jù)需要存放到多個介質(zhì)上時使用;表垂直分割: 對表進行分割, 將主鍵與部分列放到一個表中, 主鍵與其他列放到另一個表中,在查詢時減少I/O 次數(shù)。NOSQL優(yōu)點:支持高并發(fā)數(shù)據(jù)訪問,性能較高。存儲結構松散,能夠靈活支持多種

27、類型的數(shù)據(jù)格式。能夠支持海量數(shù)據(jù)的存儲,且易于橫向擴展?;诜植际綌?shù)據(jù)存儲,不存在單點故障和性能瓶頸,系統(tǒng)可用性高。缺點:NoSQL 數(shù)據(jù)庫的現(xiàn)有產(chǎn)品不夠成熟,大多數(shù)產(chǎn)品處于初創(chuàng)期。并未形成一定的標準,產(chǎn)品種類繁多,缺乏官方支持。不提供對 SQL 的支持,學習和應用遷移成本較高。支持的特性不夠豐富,現(xiàn)有產(chǎn)品提供的功能比較有限主從復制引入主從復制機制所帶來的好處:避免數(shù)據(jù)庫單點故障,提升可用性主服務器實時、 異步復制數(shù)據(jù)到從服務器, 當主數(shù)據(jù)庫宕機時, 可在從數(shù)據(jù)庫中選擇一個升級為主服務器,從而防止數(shù)據(jù)庫單點故障。讀寫分離,提高查詢效率根據(jù)系統(tǒng)數(shù)據(jù)庫訪問特點, 可以使用主數(shù)據(jù)庫進行數(shù)據(jù)的插入、

28、刪除及更新等寫操作, 而從數(shù)據(jù)庫則專門用來進行數(shù)據(jù)查詢操作,從而將查詢操作分擔到不同的從服務器以提高數(shù)據(jù)庫訪問效率。可擴展性更優(yōu)如果采用單臺數(shù)據(jù)庫服務器,則訪問量持續(xù)增加時,數(shù)據(jù)庫瓶頸暴露,且無法迅速解決問題。而主從結構可以快速增加從服務器數(shù)量,以滿足需求負載均衡一主多從分擔任務,相當于負載均衡提升數(shù)據(jù)安全性系統(tǒng)中的數(shù)據(jù)冗余存放多份,不會因為某臺機器硬件故障而導致數(shù)據(jù)丟失八 WEB 架構設計REST定義:REST從資源的角度來定義整個網(wǎng)絡系統(tǒng)結構,分布在各處的資源由統(tǒng)一資源標識符(URI)確定,客戶端應用程序通過 URI獲取資源的表現(xiàn),并通過獲得資源表現(xiàn)使得其狀態(tài) 發(fā)生改變。REST 中將資源

29、、資源的表現(xiàn)和獲取資源的動作三者進行分離MVC使用 MVC 設計表現(xiàn)層,具有以下優(yōu)點:允許多種用戶界面的擴展。 在 MVC 模式中, 視圖與模型沒有必然的聯(lián)系, 都是通過控制器發(fā)生聯(lián)系, 如果增加新類型的用戶界面, 只需修改響應的控制器和視圖即可, 模型無需變動;易于維護。 控制器和視圖隨著模型的擴展而擴展, 只要保持公共接口, 控制器和視圖的舊版本可以繼續(xù)使用;支持功能強大的用戶界面。用戶界面與模型方法調(diào)用組合起來,使程序的使用更清晰,可將友好的界面發(fā)布給用戶。負載均衡負載均衡機制是大型Web 應用解決高負荷訪問和大量并發(fā)請求時常用的有效解決方法,典型的負載均衡機制包括基于基于 DNS 的負

30、載均衡機制通過個主機地址的服務器實現(xiàn)負載均衡,特性。反向代理負載均衡則是將來自DNS 的負載均衡、基于反向代理的負載均衡等。DNS 服務器實現(xiàn), 通常通過循環(huán)復用具有同一域名的多可以看出, 該機制具有實現(xiàn)簡單、 容易實施及低成本的Internet 的連接請求以反向代理的方式動態(tài)轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡上的多臺服務器進行處理,從而達到負載均衡的目的。從系統(tǒng)執(zhí)行效率方面講,基于 DNS 的負載均衡機制實現(xiàn)簡單,但其通常不能區(qū)分服務器的差異, 也不能反映服務器的當前運行狀態(tài)。 基于反向代理的則可以根據(jù)內(nèi)部服務器的性能差異及實時負載情況進行動態(tài)負載均衡, 當系統(tǒng)多個Web 服務器性能存在明顯差異或內(nèi)部 Web

31、服務器出現(xiàn)故障時,負載均衡器可以更快做出響應,從而保證客戶端的訪問效率。采用基于反向代理的負載均衡機制,可在代理服務器中引入調(diào)速緩存機制, 對 Web 服務器返回的靜態(tài)頁面或圖片等靜態(tài)資源進行緩存, 由代理服務器承擔對原始服務器的靜態(tài)資源訪問請求,從而進一步降低原始 Web 服務器的負載。從安全性方面講, 采用基于反向代理的負載均衡機制, 代理服務器屏蔽了客戶端對真實Web 服務器的直接訪問,惡意用戶無法對真實 Web 服務器進行攻擊,且可以通過代理服務器為原本不安全的客戶端與Web 服務器之間的連接建立安全通道。 因此采用基于反向代理的負載均衡機制可為系統(tǒng)提供更好的安全性保障。九 構件基于構

32、件的軟件開發(fā)中,可以通過不同的途徑來獲取構件,主要包括以下4 種方法:從現(xiàn)有構件中獲得符合要求的構件,直接使用或做適應性修改,得到可復用的構件;通過遺留工程( Legacy Engineering) , 將具有潛在復用價值的軟件提取出來, 得到可復用的構件;從市場上購買現(xiàn)成的商業(yè)構件, BPCOTS(Commercial Off-The-Shell) 構件;開發(fā)新的符合要求的構件。開發(fā)構件通常采取3 種策略:分區(qū)(partitioning):指的是將問題情景的空間分割成幾乎可以獨立研究的部分;抽象(abstraction):是對在給定實踐內(nèi)執(zhí)行指定計算的軟/硬件申 .元的一種抽象;分割( se

33、gmentation) :是將結構引入構件的行為,支持對行為性質(zhì)進行時序推理。當前主流構件標準有:CORBA :由 OMG( 對象管理集團)制定;COM/DCOM :由 Microsoft 制定;EJB:由SUN的Java 企業(yè)Bean 制定。十 設計模式創(chuàng)建型模式主要用于創(chuàng)建對象,為設計類實例化新對象提供指南。單例(Singleton )模式:某個類只能生成一個實例,該類提供了一個全局訪問點供外部獲取該實例,其拓展是有限多例模式。原型(Prototype )模式:將一個對象作為原型,通過對其進行復制而克隆出多個和原型類似的新實例。工廠方法(FactoryMethod)模式:定義一個用于創(chuàng)建產(chǎn)品的接口,由子類決定生產(chǎn)什么產(chǎn)品。抽象工廠(AbstractFactory)模式 :提供一個創(chuàng)建產(chǎn)品族的接口,其每個子類可以生產(chǎn)一系列相關的產(chǎn)品。建造者( Builder )模式 :將一個復雜對象分解成多個相對簡單的部分,然后根據(jù)不同需要分別創(chuàng)建它們,最后構建成該復雜對象。結構型模式主

溫馨提示

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

評論

0/150

提交評論