版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
寧波諾丁漢大學總復習資料2中間件(Middleware)是一種軟件,處于系統(tǒng)軟件〔操作系統(tǒng)和網絡軟件〕與應用軟件之間,它能使應用軟件之間進展跨網絡的協(xié)同工作〔也就是互操作〕,這時允許各應用軟件之下所涉及的“系統(tǒng)構造、操作系統(tǒng)、通信協(xié)議、數據庫和其它應用效勞〞各不一樣。34提供了合作對象透明設施T1:有了它,合作一方不必知道合作的另一方為誰和它在何處,只要說明自己需要怎樣的效勞,T1就能為其物色到一個適宜的合作方。提供了下層設備透明設施T2:有了它,合作一方不必關心合作的另一方所用的節(jié)點設備〔機器和操作系統(tǒng)〕與本節(jié)點的差異。
5按照IDC的分類方法,中間件分為:遠程過程調用中間件分布式對象中間件數據庫訪問中間件事務處理中間件消息中間件6數據庫訪問中間件7連接應用程序和數據庫的軟件,允許通過單一的、定義良好的接口訪問網絡中來自不同廠商的數據庫產品〔1〕通用網關接口CGI〔駐留在WebServer上〕〔2〕專用API:DLL形式NSAPI(Netscape)ISAPI(Microsoft)〔3〕通用數據庫接口JDBC〔SUN〕ODBC(Microsoft)8〔4〕數據庫引擎Borland公司開發(fā),類似于ODBC,支持與數據庫的直接連接,效率較ODBC高〔5〕數據庫網關用于分布式應用環(huán)境,無需在客戶機進展各種配置,如安裝各種ODBC驅動、設置ODBC數據源等,使用網關來統(tǒng)一管理不同數據庫的訪問相關產品:EDA/SQL、RDA、DRDA
9事務處理中間件〔TransactionProcessingMiddleware,TPM〕10又稱分布式事務處理中間件。專門針對聯(lián)機交易處理系統(tǒng)而設計。事務是對共享的系統(tǒng)資源所完成的一件工作,它通常是由一些列操作所組成。事務必須具有ACID〔Atomicity,Consistency,Isolation和Durability〕屬性。11本地事務的管理由數據庫系統(tǒng)來完成。聯(lián)機交易處理系統(tǒng)需要處理大量的分布式事務。分布式事務涉及到多個數據庫,且允許這些數據庫異構,如在不同的銀行間進展資金轉賬。分布式事務需要處理大量并發(fā)進程,涉及到操作系統(tǒng)、文件系統(tǒng)、編程語言、數據通訊、數據庫系統(tǒng)、系統(tǒng)管理及應用軟件,是一個相當艱巨的任務。通過事務處理中間件簡化應用開發(fā)。由它來負責處理聯(lián)機交易過程中分布式交易的完整性、并發(fā)控制、負載均衡以及出錯恢復等。12X/OpenDTP模型包括3個組成局部:應用程序〔ApplicationProgram,簡稱AP〕是事務的使用者,它是開場〔Begin〕、提交〔Commit〕和回滾〔Rollback〕事務的發(fā)出者。它規(guī)定一個事務的界限,并給出事務所包含的操作。資源管理器〔ResourceManager,簡稱RM〕:提供對共享資源的訪問,數據庫管理系統(tǒng)〔DBMS〕或文件訪問系統(tǒng)都可以成為RM。事務管理器〔TransactionManager,簡稱TM〕:是AP與RM之間的協(xié)調員,它給每個事務分配標示符,監(jiān)視其進展,保證事務處理的順利進展,并負責事務在失敗情況下的恢復。1314分布式事務涉及到多個結點的數據的更新,任何一個結點或結點間通信的失效都可能導致分布式事務的失敗。因此,為了保證事務的完整性,分布式事務通常采用兩階段提交協(xié)議(TwoPhaseCommitmentProtocol,簡稱2PC)來提交。15階段1〔準備階段〕TM詢問所有的RM是否已準備提交。階段2〔提交階段〕TM檢查所有RM的答復,只要有一個RM給出否認的答復,TM指示所有的RM進展回滾。否那么,TM指示所有的RM進展提交。16常見的TPM產品有Microsoft的MTSSUN的JTSOMG的OTS東方通的TongEasy17消息中間件〔Message-OrientedMiddleware,MOM〕18動機:RPC調用的缺點〔1〕客戶端與效勞器端需要同時在線;〔2〕客戶端需要知道效勞器端的調用接口,假設調用接口發(fā)生改變,客戶端需要做相應變化,如通過ODBC連接訪問數據庫,客戶端需要知道遠程數據庫的類型,假設類型發(fā)生改變,還需要重新裝載相應的驅動程序。19〔3〕操作過程中需要一直保持與效勞器端的連接,直到操作完畢。因而,〔a〕一旦連接中斷,就意味著操作失敗或數據喪失;〔b〕通常判斷連接中斷的時間較長,假設信道的可靠性較差,容易造成連接中斷,那么應用效率將嚴重低下;〔c〕效勞器端在執(zhí)行操作的過程中,并不涉及網上數據傳輸,但連接的保持占用信道,容易造成網絡堵塞。20這個問題可用消息中間件來解決,應用間通過傳遞消息來進展協(xié)作,是一種異步通信模式主要功能是在不同的網絡協(xié)議、不同的操作系統(tǒng)和不同的應用程序之間提供可靠的和可恢復的〔假設發(fā)生意外〕消息傳送。這時應用并不需要消息即時即刻傳遞到達對方。21工作原理:應用之間以一系列消息的方式進展通信。在消息傳遞過程中,為了防止消息被喪失,消息被保存在消息隊列中。應用把消息發(fā)送到與接收者有關的隊列中。消息傳遞機制保證將消息傳送到目的地且只傳送一次。在消息傳遞過程中,應用之間不必建立聯(lián)系,發(fā)送者僅需將消息放入到與接收者有關的隊列中,而不必關心接收者是否在線。接收者僅需從自己的隊列中提取消息即可。22常見的MOM產品有IBM的MQSeriesMicrosoft的MSMQ東方通的TongLink/Q23寧波諾丁漢大學總復習資料1對象〔Object〕是具有一些狀態(tài)和行為的實體,其內部實現是不可見的。對象的狀態(tài)反映對象所處的情形,通常由對象的屬性值來表示;對象的行為定義對象如何運作和反響,通常表示為對象的接口〔Interface〕、函數〔Function〕或方法〔Method〕。類〔Class〕是一系列相近對象的一般性定義,它提供了對象屬性和行為的標準。 24寧波諾丁漢大學總復習資料1繼承〔Inheritance〕是基于原有對象創(chuàng)立新對象的代碼重用機制,它定義了一個類共享一個或多個其它類的構造和行為的關系。封裝〔Encapsulation〕就是隱藏對象的具體實現細節(jié),只能通過所定義的界面來訪問和操作對象的數據。25寧波諾丁漢大學總復習資料1抽象〔Abstract〕是指從一組不同的實體中提取出公共特性〔抽象類〕的過程。抽象類局部定義了類的數據構造和行為,且這些數據構造和行為通常無具體的實現。而完整的數據構造和行為以及它們的具體實現那么由其子類進一步確定。因此,抽象類通常不能被實例化為一個對象。26寧波諾丁漢大學總復習資料1多態(tài)〔Polymorphism〕是指對同一界面或行為可以有多種不同的實現的能力。使用單一的消息可以調用不同的行為。例如由形狀類派生出的矩形和圓形類,都具有“繪制〞方法。調用矩形對象的繪制方法將畫出一個矩形,而調用圓形對象的繪制方法將畫出一個圓形,同樣是“繪制〞方法,不同的類有不同的實現。 27寧波諾丁漢大學總復習資料1以上幾個概念既是對面向對象的定義,也是對象的特性。從面向對象的編程語言來看,面向對象就是對象、類和繼承的組合;從面向對象的系統(tǒng)特性來看,面向對象應包括封裝、抽象和多態(tài)。 28設計面向對象軟件需考慮:如何找到相關的對象并以適當粒度將它們歸類定義類的接口和繼承層次建立對象之間的根本關系設計既要對當前的問題具有針對性,又要求對將來的問題有通用性。對上述問題的一個有效解決途徑是使用設計模式29“模式描述了一個在我們周圍不斷重復發(fā)生的問題以及該問題的解決方案的核心。這樣,你就能一次又一次地使用該方案而不必做重復勞動〞30表設計模式空間目的創(chuàng)建型結構型行為型范圍類FactoryMethodAdapterInterpreterTemplateMethod對象AbstractFactoryBuilderPrototypeSingletonAdapterBridgeCompositeDecoratorFa?adeFlyweightProxyChainofResponsibilityCommandIteratorMediatorMementoObserverStateStrategyVisitor31模式分類準那么:1.目的準那么:模式用來完成什么工作的創(chuàng)立型,構造型,行為型(1)創(chuàng)立型模式與對象的創(chuàng)立有關(2)構造型模式處理類或對象的組合(3)行為型模式對類或對象怎樣交互和分配職責進展描述322.范圍準那么:指定模式主要是用于類還是用于對象類模式用于處理類和子類之間的關系,這些關系通過繼承建立,是靜態(tài)的,在編譯時刻便確定下來了。對象模式處理對象間的關系,這些關系在運行時刻是可以變化的,更具動態(tài)性33可復用的面向對象設計的兩個原那么34第一個原那么:針對接口編程,而不是針對實現編程35類繼承與接口繼承類繼承是一個通過復用父類功能而擴展應用功能的根本機制。接口繼承描述了一個對象什么時候能被用來替代另一個對象。當繼承被恰當使用時,所有從抽象類導出的類將共享該抽象類的接口。這時,所有的子類都能響應抽象類接口中的請求。支持多態(tài)機制。36根據抽象類中定義的接口來操縱對象有以下兩個好處:(1)客戶無須知道他們使用對象的特定類型,只須對象有客戶所期望的接口(2)客戶無須知道他們使用的對象是用什么類來實現的,他們只須知道定義接口的抽象類
這極大地減少了對象實現之間的相互依賴性。37第二個原那么:優(yōu)先使用對象組合,而不是類繼承
38類繼承通過繼承的方式來復用并擴展父類功能。通過生成子類的復用稱為白箱復用(white-boxreuse)。在此方式中,父類的內部細節(jié)對子類可見。新的更復雜的功能可以通過組合對象來獲得,且被組合的對象通過彼此間良好定義的接口來進展協(xié)作。這種復用風格稱為黑箱復用(black-boxreuse)。在對象組合方式中,對象的內部細節(jié)不可見。39組合的優(yōu)點:(1)組合是通過獲得對其他對象的引用而在運行時刻動態(tài)定義的(2)對象只通過接口訪問,不破壞封裝性(3)只要類型一致,運行時刻可用一個對象來替代另一個對象(4)因為對象的實現是基于接口寫的,所以實現上存在較少的依賴關系(5)優(yōu)先使用組合有助于保持每個類的封裝性,且讓每個類集中在單個任務上40FactoryMethod定義一個用于創(chuàng)立對象的接口,讓子類決定將哪一個類實例化。41AbstractFactory提供一個創(chuàng)立一系列相關或相互依賴對象的接口,而無需指定它們具體的類42Bridge將抽象局部與實現局部別離,使它們可以獨立變化43Proxy為其他對象提供一種代理來控制對這個對象的訪問。4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)融資擔保合同范本
- 未來五年虛擬專用網設備(VPN)企業(yè)數字化轉型與智慧升級戰(zhàn)略分析研究報告
- 未來五年駐極體傳聲器企業(yè)數字化轉型與智慧升級戰(zhàn)略分析研究報告
- 未來五年激光器件企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略分析研究報告
- 未來五年壓裂車行業(yè)直播電商戰(zhàn)略分析研究報告
- 未來五年前沿新材料行業(yè)跨境出海戰(zhàn)略分析研究報告
- 系統(tǒng)架構師面試攻略及考核重點
- 公司轉讓租賃合同范本
- 北京熱力熱源分公司招聘筆試真題2024
- 餐廳廚師長面試題目解析
- 農商行數據安全管理辦法
- 造價咨詢項目工作實施方案
- 不合格食品管理制度
- QGDW10384-2023輸電線路鋼管塔加工技術規(guī)程
- 咖啡店5s管理制度
- 供電營業(yè)規(guī)則(2024版)
- T/SSBME 1-2024醫(yī)療器械上市后研究和風險管控計劃編寫指南
- 鋼筋棚拆除合同范本
- 斷絕親子協(xié)議書
- 【MOOC答案】《光纖光學》(華中科技大學)章節(jié)作業(yè)期末慕課答案
- 小學生班級管理交流課件
評論
0/150
提交評論