分布對象技術(shù)知識點總結(jié).doc_第1頁
分布對象技術(shù)知識點總結(jié).doc_第2頁
分布對象技術(shù)知識點總結(jié).doc_第3頁
分布對象技術(shù)知識點總結(jié).doc_第4頁
分布對象技術(shù)知識點總結(jié).doc_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章:軟件構(gòu)件與中間件1.分布式軟件的基本概念:分布式軟件指運行在網(wǎng)絡(luò)環(huán)境中的軟件系統(tǒng),而網(wǎng)絡(luò)環(huán)境是一群通過網(wǎng)絡(luò)互相連接的處理系統(tǒng),每個處理節(jié)點由處理機(jī)硬件、操作系統(tǒng)及基本通信軟件等組成。(1)三層結(jié)構(gòu)相對于兩層結(jié)構(gòu)的改進(jìn):兩層結(jié)構(gòu)的缺點:客戶端的負(fù)擔(dān)仍然比較重:客戶端仍要處理復(fù)雜的數(shù)據(jù)??蛻舳说目梢浦残圆缓茫禾幚韽?fù)雜必然牽涉更多的移植性問題;每個客戶端上都要安裝數(shù)據(jù)庫驅(qū)動程序。系統(tǒng)的可維護(hù)性不好:客戶端包含過多的商業(yè)邏輯;商業(yè)邏輯與人機(jī)交互界面交織在一起。數(shù)據(jù)的安全性不好。三層結(jié)構(gòu)的優(yōu)勢:更好的性能和可伸縮性。大量的中間層中間件平臺提供豐富的系統(tǒng)級服務(wù),使得開發(fā)人員可以以更少的工作量開發(fā)出更復(fù)雜、可靠、高效的軟件系統(tǒng)。剩下的內(nèi)容是對兩層結(jié)構(gòu)缺點的改進(jìn)。2.軟件構(gòu)件的基本概念:構(gòu)件指系統(tǒng)中可以明確辨識的構(gòu)成成分;軟件構(gòu)件指軟件系統(tǒng)中具有一定意義的、相對獨立的構(gòu)成成分,是可以被重用的軟件實體。3.中間件的基本概念:在操作系統(tǒng)與應(yīng)用系統(tǒng)之間的一層軟件,為分布式應(yīng)用的開發(fā)、部署、運行與管理提供支持。(1)典型集成中間件為軟件開發(fā)提供的三種基本支撐:n提供構(gòu)件運行環(huán)境管理構(gòu)件的生命周期管理構(gòu)件的實例管理構(gòu)件的元信息等n提供互操作機(jī)制集成中間件都提供了很強(qiáng)的高層通信協(xié)議以屏蔽節(jié)點的物理特性以及各節(jié)點在處理器、操作系統(tǒng)等方面的異構(gòu)性;基于中間件的互操作支持,開發(fā)人員在開發(fā)與調(diào)用分布式對象時,均不需自己編寫處理底層通信的代碼。共同特征就是幫助應(yīng)用程序完成編組與解組等跨越網(wǎng)絡(luò)通信的底層工作,實現(xiàn)遠(yuǎn)程過程/方法調(diào)用中間件的功能。n提供公共服務(wù)公共服務(wù)又稱為系統(tǒng)級服務(wù),指由中間件(應(yīng)用服務(wù)器)實現(xiàn)的、應(yīng)用程序使用的軟件系統(tǒng)中共性程度高的功能成分。n由中間件而非應(yīng)用程序?qū)崿F(xiàn)n應(yīng)用程序中通常會調(diào)用其實現(xiàn)的共性功能中間件提供的主要公共服務(wù)包括:n命名服務(wù)n事務(wù)服務(wù)n安全服務(wù)n持久性服務(wù)、消息服務(wù)、分布式垃圾回收服務(wù)、資源管理服務(wù)等3.互操作的基本原理與實例(1)樁/框架結(jié)構(gòu)第二章:CORBA的基本原理1.對象管理體系結(jié)構(gòu)(1)OMA參考模型(CORBA中的公共服務(wù)) OMA是CORBA所基于的概念框架,它描述了一個較高層次的分布式計算環(huán)境。2. ORB結(jié)構(gòu)ORB是OMA參考模型的核心,它提供了分布式對象之間透明的地發(fā)送請求或接收響應(yīng)的基本機(jī)制,獨立于實現(xiàn)對象的特定平臺與技術(shù)。(1) 樁/框架結(jié)構(gòu)3.CORBA對于可互操作的支持(1)不同平臺與語言之間的互操作性IDL標(biāo)準(zhǔn)和IDL到程序設(shè)計語言的映射使得使用同一廠商的ORB產(chǎn)品開發(fā)的客戶程序與服務(wù)程序可以交互。(2) 不同廠商的ORB產(chǎn)品之間的互操作性CORBA 2.0引入了GIOP和IIOP(3) 不同體系結(jié)構(gòu)中的組件的互操作性如一個CORBA對象如何操作一個DCOM對象。ESIOP可以解決一部分問題。還有許多工作要做。第3章 :基于CORBA的開發(fā)過程設(shè)計基于CORBA的分布式系統(tǒng)時,一般應(yīng)考慮如下幾個問題:運行平臺:網(wǎng)絡(luò)傳輸:多樣化的網(wǎng)絡(luò)傳輸選擇;設(shè)計CORBA應(yīng)用時確保ORB能使用必要的網(wǎng)絡(luò)傳輸消息傳遞:同步方式;異步方式(延遲同步方式);單向方式資源優(yōu)化:分布式環(huán)境下,跨網(wǎng)絡(luò)的通信開銷是相當(dāng)可觀的,占用相當(dāng)多的系統(tǒng)資源;避免頻繁的跨網(wǎng)絡(luò)(尤其是廣域網(wǎng))通信其它:安全性、可靠性、事務(wù)處理、并發(fā)控制;錯誤處理1基本開發(fā)過程 自動生成的樁和框架是按照標(biāo)準(zhǔn)提供了底層通信等公共服務(wù)的接口接口定義是獨立于程序設(shè)計語言的,只要能夠?qū)崿F(xiàn)IDL到程序設(shè)計語言的映射,CORBA可以支持任何程序設(shè)計語言第四章:編寫對象接口(CORBA)1.OMG IDL的語法與語義 兩點說明:OMGIDL是獨立于程序設(shè)計語言的。(一般IDL的特性);是一種說明性語言語法規(guī)則:采用類似ANSI C+的詞法規(guī)則和預(yù)處理特性(如編譯指令#include)。IDL文件 本身采用ASCII字符集,但字符與字符串文字常量則采用Unicode。 關(guān)鍵字是大小寫敏感的,但標(biāo)識符卻是大小寫無關(guān)的模塊:模塊用于限制標(biāo)識符的作用域。一個IDL模塊被映射為一個同名的Java程序包,該模塊中的所有IDL類型被映射到相應(yīng)程序包中的Java類或接口。不包含在任何模塊之中的IDL聲明被映射到一個無名的Java全局作用域程序包類型:用來說明在客戶和服務(wù)對象之間要交換的數(shù)據(jù)的類型(如參數(shù)和返回值的類型)常量:用來說明在客戶和服務(wù)對象之間要交換的常量數(shù)據(jù)異常:異常聲明用來說明在接口中包含的操作可能會引發(fā)的異常接口:接口聲明是IDL規(guī)格說明的核心內(nèi)容,用來說明分布式對象所提供的服務(wù)。接口映射到Java語言的接口值:屬性不應(yīng)看作對象的狀態(tài)數(shù)據(jù),最好將它們理解為一種特殊的操作。同方法聲明一樣,屬性也映射到Java語言接口中的方法2. 使用值類型(valuetype)值類型是一類特殊的類型聲明。值類型主要用于在網(wǎng)絡(luò)中傳遞對象的狀態(tài)信息,相當(dāng)于提供了一種和程序設(shè)計語言無關(guān)的聲明類的方式。值類型有兩種典型用法:一是在按值調(diào)用的參數(shù)傳遞方式中創(chuàng)建對象副本(即參數(shù)類型是值類型),二是在遠(yuǎn)程操作返回一個對象時創(chuàng)建對象副本(即返回值類型是值類型)。(1)對象副本的狀態(tài)變化不會影響原來的對象(2)如何正確使用3.編寫對象接口的準(zhǔn)則 1:一個IDL接口應(yīng)該與現(xiàn)實世界中的業(yè)務(wù)系統(tǒng)中的某個工作實體相對應(yīng) 2:開發(fā)人員在設(shè)計分布式對象接口時必須始終貫徹這樣的指導(dǎo)思想,即隨時注意到同一進(jìn)程中對象的接口與分布式對象的接口通常存在很大的區(qū)別,忽視這種區(qū)別會給分布式對象系統(tǒng)的可靠性、可伸縮性、可重用性等質(zhì)量因素帶來危害。 3:區(qū)別會話型接口與實體型接口有利于設(shè)計人員組織眾多的分布式對象。 4:事務(wù)處理在許多分布式數(shù)據(jù)處理系統(tǒng)中也是必須考慮的重要問題之一第五章:編寫服務(wù)端程序(CORBA)1.POA體系架構(gòu)2. 設(shè)計POA策略線程策略;生存期策略;活動對象保持策略;對象查找策略3.使用POA4.伺服對象管理器(1)伺服對象激活器(如何管理大量服務(wù)端對象):真正提供完成客戶程序請求的操作,通常由程序設(shè)計語言對象實現(xiàn),可以進(jìn)行實例化并訪問其提供的成員方法;通過CORBA對象提供服務(wù)(2)伺服對象定位器 伺服對象管理器幫助POA管理服務(wù)端未激活對象,實現(xiàn)對象查找、激活和凍結(jié)n伺服對象管理器使程序員可以按照多種方式控制并使用對象,但必須注冊到POA才能被使用;伺服對象管理器的功能可以進(jìn)一步擴(kuò)充,只要滿足CORBA標(biāo)準(zhǔn)中聲明的接口定義5. 適配器激活器如果一個服務(wù)程序在啟動時就創(chuàng)建了它所需的全部POA,那么就無需使用或提供任何適配器激活器。僅當(dāng)需要在處理請求的過程中自動創(chuàng)建新的POA時,才需要用到適配器激活器第六章:J2EE體系架構(gòu)1.J2EE構(gòu)件:由開發(fā)人員實現(xiàn),構(gòu)成應(yīng)用系統(tǒng),運行在J2EE平臺上客戶端構(gòu)件AppletsApplication Clients服務(wù)端構(gòu)件Web構(gòu)件(Servlets, JSPs)EJBs 2.J2EE公共服務(wù):J2EE應(yīng)用構(gòu)件所使用的功能,由J2EE平臺提供商實現(xiàn)(1)Service API(開發(fā)時使用)(2)運行時服務(wù)3.通信支持:支持協(xié)作構(gòu)件之間的通信;由Container提供。4.J2EE應(yīng)用程序5.基于角色的開發(fā)l將構(gòu)建整個軟件系統(tǒng)的任務(wù)劃分到不同的角色n明確的劃分任務(wù)與責(zé)任n不同的階段有不同的關(guān)注重點,這種劃分使得每個角色僅關(guān)注他所要完成的工作n實現(xiàn)了開發(fā)與部署的分離第七章:EJB技術(shù)基礎(chǔ)1.EJB體系結(jié)構(gòu)(1)EJB與java Bean對比構(gòu)件模型定義了開發(fā)可重用構(gòu)件的方式 EJB與Javabeans都是基于java語言的構(gòu)件模型 開發(fā)應(yīng)用時,可以選擇EJB模型,也可以選擇JavaBeans模型 EJB用于服務(wù)端應(yīng)用開發(fā)JavaBeans用于客戶端應(yīng)用開發(fā)n也可以使用JavaBeans進(jìn)行服務(wù)端應(yīng)用開發(fā),但JavaBeans模型沒有提供服務(wù)框架,當(dāng)應(yīng)用需要使用系統(tǒng)級服務(wù)(如事務(wù)管理)時,不適合。 EJB構(gòu)件是可部署的nEJB構(gòu)件可以作為獨立的單元被部署到EJB應(yīng)用服務(wù)器上,是應(yīng)用構(gòu)件(application components)。JavaBeans構(gòu)件是不可部署的nJavaBeans構(gòu)件是開發(fā)構(gòu)件,不能被部署為獨立的單元。 EJB構(gòu)件是部署時可定制的n使用部署描述符可以在部署EJB時對其運行時配置進(jìn)行定制JavaBeans構(gòu)件在部署時不能進(jìn)行定制nJavaBeans構(gòu)件的定制僅發(fā)生在開發(fā)階段n只能利用開發(fā)工具創(chuàng)建并組裝JavaBeans構(gòu)件,部署時不能定制 EJB構(gòu)件是分布式對象n可以被客戶應(yīng)用或者其它EJB構(gòu)件進(jìn)行遠(yuǎn)程訪問JavaBeans構(gòu)件不是分布式對象nJavaBeans構(gòu)件只能在其構(gòu)成的應(yīng)用中使用n不能提供遠(yuǎn)程訪問能力 EJB構(gòu)件對終端用戶不可見n運行在服務(wù)端,沒有人機(jī)交互界面11部分JavaBeans構(gòu)件對終端用戶可見n如GUI應(yīng)用中使用的按鈕構(gòu)件(2)EJB體系結(jié)構(gòu)中的構(gòu)件(兩個接口+一個類)EJB體系結(jié)構(gòu)由6種構(gòu)件組成n Enterprise Beann Home Interfacen Remote Interfacen EJB Containern EJB Servern EJB Client lEnterprise Beann包含商業(yè)邏輯代碼的Java類n提供商業(yè)方法供調(diào)用n被部署到EJB應(yīng)用服務(wù)器上n可以被組裝形成大型的EJB應(yīng)用 EJB體系結(jié)構(gòu)中的另一類構(gòu)件是Home InterfacenHome Interface包含enterprise bean生命周期管理的相關(guān)方法n客戶程序使用Home Interface創(chuàng)建或刪除enterprise bean的實例 EJB體系結(jié)構(gòu)中的另一類構(gòu)件是Remote InterfacenRemote Interface包含enterprise bean實現(xiàn)的商業(yè)方法的定義n定義了enterprise bean提供的服務(wù)n客戶程序只能通過remote interface訪問enterprise bean實現(xiàn)的商業(yè)方法,不能直接調(diào)用。2.EJB設(shè)計原則理解作用,了解對應(yīng)關(guān)系第八章:EJB構(gòu)件開發(fā)過程1.無狀態(tài)會話構(gòu)件開發(fā)與使用(1)生命周期特征Method Ready No State包含兩個狀態(tài):Method Ready state 和 No state No 狀態(tài)表明EBJ容器不存在無狀態(tài)會話bean實例1.實例的創(chuàng)建和刪除是有容器自動來控制的,并不是由Home接口中的Create或Remove創(chuàng)建或刪除。2.會話bean只能有無參數(shù)的create或ebjCreate方法創(chuàng)建,所以別人初始化的EBJ實例也可以使用 從No狀態(tài)-就緒態(tài):調(diào)用enterprise類中的setSessionContext和ebjCreate就緒態(tài)-No狀態(tài):調(diào)用ebjRemove方法(2) 為什么會設(shè)計為無狀態(tài)會話構(gòu)件平臺無關(guān)性(3)客戶端(對構(gòu)建生命周期的影響) 只要EBJ認(rèn)為實例池中需要更多的實例為客戶端服務(wù),就會創(chuàng)建新的實例,實例從No狀態(tài)到就緒態(tài)。同理,如果不需要更多實例,則根據(jù)某種策略刪除某些實例,刪除的某些實例從就緒態(tài)到No狀態(tài)2.有狀態(tài)會話構(gòu)件開發(fā)與使用(ZD)(1)生命周期特征(2) 為什么會設(shè)計為有狀態(tài)會話構(gòu)件(3) 客戶端(對構(gòu)建生命周期的影響)只要有新的客戶端請求就會創(chuàng)造新的新的實例,這時新創(chuàng)建的實例從No狀態(tài)到就緒態(tài)如果客戶端不需要使用實例或者客戶程序超時,容器會刪除該實例,因此從就緒態(tài)到No狀態(tài)因為每個客戶端需要一個專門的有狀態(tài)會話bean為其服務(wù),當(dāng)bean過多時,容器只保存剛被使用或者正在使用的bean,其他移動到持久存儲介質(zhì)上,此時被轉(zhuǎn)移到持久存儲介質(zhì)上就是Passivated狀態(tài)當(dāng)客服端再次使用Passivated狀態(tài)時恢復(fù)到內(nèi)存,變?yōu)榫途w態(tài)3.實體構(gòu)件的開發(fā)與使用第九章:EJB高級特性1.環(huán)境條目(1)動因(2)效果2.事務(wù)控制(ZD)(1)事務(wù)控制的基本要求 事務(wù)相關(guān)的一系列操作的原子性(2) CMT系統(tǒng)級異常 程序員在bean的源程序中沒有事務(wù)邊界控制的代碼 再部署描述符中指定事物屬性,有容器控制事務(wù)的邊界容器維護(hù)的事務(wù)是方法級的(3) BMT(事務(wù)結(jié)束) 程序員在bean的源程序中控制事務(wù)邊界 再部署描述符中指定由bean控制邊界3.安全性控制(1)安全性控制的兩個級別 認(rèn)證和授權(quán)(2) 配置的主要內(nèi)容(定義角色、選擇認(rèn)證方式、配置WEB模塊授權(quán)規(guī)則、配置EJB模塊授權(quán)規(guī)則、將角色映射到實際安全域)定義角色:Supervisor和Normaluser選擇認(rèn)證方式:basic :系統(tǒng)彈出對話框,用戶輸入用戶名和密碼 Client Certificate:電子證書方式 Form Basic:程序員用戶登錄界面配置WEB模塊授權(quán)規(guī)則: 設(shè)置認(rèn)證方式 設(shè)置授權(quán)方式配置EJB模塊授權(quán)規(guī)則: 設(shè)置代理身份 設(shè)置方法訪問授權(quán)將角色映射到實際安全域: Normaluser映射到Account Manager Bean,可以訪問getbalance但是不能CreeateAccount Supervisor映射到Account Manager Bean,可以訪問CreeateAccount 第十章:WEB Service概述1.WEB服務(wù)體系結(jié)構(gòu)(1)SOA架構(gòu)(三個參與者、三個基本操

溫馨提示

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

最新文檔

評論

0/150

提交評論