分布式計算環(huán)境課程總結(jié)_第1頁
分布式計算環(huán)境課程總結(jié)_第2頁
分布式計算環(huán)境課程總結(jié)_第3頁
分布式計算環(huán)境課程總結(jié)_第4頁
分布式計算環(huán)境課程總結(jié)_第5頁
已閱讀5頁,還剩117頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、分布計算環(huán)境課程總結(jié)主要內(nèi)容第一章 緒論第二章 分布式系統(tǒng)的基本原理第三章 面向?qū)ο蟮姆植加嬎悱h(huán)境第四章 面向構(gòu)件的分布計算環(huán)境第五章 面向Web的分布計算環(huán)境第六章 面向資源整合的分布計算環(huán)境第七章 基于人工智能的分布計算環(huán)境緒論 分布式系統(tǒng)在 網(wǎng) 絡(luò) 計 算 平臺 上 開 發(fā)、 部 署、 管 理 和 維 護 以 資 源 共 享 和 協(xié) 同 工 作 為 主 要 應(yīng) 用 目 標 的 分 布 式 應(yīng) 用 系 統(tǒng)分布計算簡單地說,分布式計算是兩個或多個軟件共享信息、協(xié)同工作。這些軟件既可以在同一臺計算機上運行,也可在通過網(wǎng)絡(luò)連起來的幾臺不同機器上運行。分布計算技術(shù)是構(gòu)成分布式系統(tǒng)的基礎(chǔ)分布計算環(huán)境

2、 分布計算環(huán)境:分布計算環(huán)境提供了網(wǎng)絡(luò)環(huán)境下不同軟、硬件平臺資源共享和互操作的有效手段,使得分布式計算可以比較方便地得以實現(xiàn),從而分布式系統(tǒng)可以比較方便地得以構(gòu)造方便分布式系統(tǒng)的構(gòu)建:設(shè)計、實現(xiàn)、部署、維護分布式計算環(huán)境本身實際上也是分布式系統(tǒng)Distributed Computing Environment分布計算環(huán)境的技術(shù)基礎(chǔ) 分布式計算環(huán)境構(gòu)造技術(shù)基礎(chǔ)分布在網(wǎng)絡(luò)上的程序之間的互操作技術(shù)目錄技術(shù)、負載平衡技術(shù)、容錯技術(shù)、事務(wù)管理技術(shù)、安全技術(shù) 面向?qū)ο蟮姆植加嬎悱h(huán)境簡化面向?qū)ο蟮姆植际较到y(tǒng)的設(shè)計與實現(xiàn)面向構(gòu)件的分布計算環(huán)境簡化基于構(gòu)件的分布式系統(tǒng)的設(shè)計與實現(xiàn)面向的分布計算環(huán)境主要內(nèi)容第一章

3、 緒論第二章 分布式系統(tǒng)的基本原理第三章 面向?qū)ο蟮姆植加嬎悱h(huán)境第四章 面向構(gòu)件的分布計算環(huán)境第五章 面向Web的分布計算環(huán)境第六章 面向資源整合的分布計算環(huán)境第七章 基于人工智能的分布計算環(huán)境分布式系統(tǒng)的基本原理體系結(jié)構(gòu) 進程 通信 命名 一致性和復(fù)制容錯安全 分布式系統(tǒng)體系結(jié)構(gòu)樣式1、分層體系結(jié)構(gòu)2、對象的體系結(jié)構(gòu)3、以數(shù)據(jù)為中心的體系結(jié)構(gòu)4、基于事件的體系結(jié)構(gòu)第N層第N-1層第2層第1層共享數(shù)據(jù)空間組件組件組件組件組件組件主動倉庫式(黑板式)系統(tǒng)體系結(jié)構(gòu)系統(tǒng)體系結(jié)構(gòu):軟件體系結(jié)構(gòu)的具體實例。確定了軟件組件、這些組件的交互以及它們的位置(部署)就是軟件體系結(jié)構(gòu)的一個實例。主要討論1、集中式

4、體系結(jié)構(gòu)2、非集中式體系結(jié)構(gòu),如P2P3、混合體系結(jié)構(gòu)C/S集中式的各種各樣的分層方式如何分層取決于應(yīng)用系統(tǒng)的具體情況混合型體系結(jié)構(gòu)將客戶/服務(wù)器結(jié)構(gòu)與非集中式結(jié)構(gòu)相結(jié)合如:邊界服務(wù)器系統(tǒng)(edge server)C/SP2P進程分布式系統(tǒng)中,進程是基本部分,它們構(gòu)成了不同機器間通信的基礎(chǔ);分布式系統(tǒng)中的線程對于執(zhí)行阻塞性I/O操作時繼續(xù)使用CPU是非常有用的,如采用多線程方式,可以構(gòu)建更高效的服務(wù)器;客戶進程一般實現(xiàn)用戶接口;通過隱藏與服務(wù)器通信的細節(jié),獲得更好的分布透明性;客戶進程可以是多線程的;服務(wù)器進程可以實現(xiàn)一種服務(wù)也可以實現(xiàn)多種服務(wù),可以是狀態(tài)無關(guān)的也可以是狀態(tài)相關(guān)的;服務(wù)器進程常

5、是多線程實現(xiàn)的;很多服務(wù)器組織成集群,通常需隱藏集群內(nèi)部細節(jié), 使用單訪問點將請求消息轉(zhuǎn)發(fā)給服務(wù)器。服務(wù)器的有狀態(tài)和無狀態(tài)無狀態(tài)服務(wù)器:服務(wù)器不保存客戶程序的狀態(tài)例如,Web服務(wù)器有狀態(tài)服務(wù)器:保存客戶程序的狀態(tài)例如,NFS文件服務(wù)器文件使用表(客戶,文件,可更新否)服務(wù)器重啟時:恢復(fù)故障前狀態(tài)無狀態(tài)服務(wù)器也可以實現(xiàn)有狀態(tài)的服務(wù)如Web服務(wù)器使用Cookie通信傳統(tǒng)的分布式系統(tǒng)通過基于傳輸層提供的低層消息來進行通信,如TCP/IP 套接字分布計算環(huán)境(中間件)提供更高層次的通信支持RPC、RMI基于消息的通信RPC、RMI等主要提供同步通信功能但在一些應(yīng)用場合,面向消息的異步通信更方便一些瞬時

6、和持久,同步和異步:這些性質(zhì)可以組合如:通信持久性和同步性的組合(a) 持久異步通信 (b)持久同步通信 通信面向流的通信服務(wù)質(zhì)量QoS數(shù)據(jù)傳輸要求的比特率創(chuàng)建會話的最大延時端到端最大延時最大往返延時誤碼率丟包率流的同步多播通信從發(fā)送方到多個接收方命名名稱在所有計算機系統(tǒng)中都起著非常重要的作用名稱可用來表示實體,基本有3種類型的名稱:地址、標識符、用戶友好的名稱命名系統(tǒng)的主要功能是把名稱解析為它所標識的實體簡單地,命名系統(tǒng)中可以有一個名稱到地址的綁定表如(Name,address)表大型分布式系統(tǒng),資源眾多,一個表可能無法滿足要求分布式系統(tǒng)中,命名系統(tǒng)的實現(xiàn)本身通常是分布在多臺計算機上的其分布

7、機制對命名系統(tǒng)的效率和可靠性起著關(guān)鍵的作用分布式系統(tǒng)常見的三類命名系統(tǒng)無結(jié)構(gòu)命名名稱中不包含任何有關(guān)如何定位其相關(guān)實體的訪問點的信息:廣播多播、分布式散列表結(jié)構(gòu)化命名簡單的、人類可理解名稱;名稱通常組成名字空間:根節(jié)點、目錄節(jié)點、葉節(jié)點DNS基于屬性的命名常用(屬性、值)來描述實體;基于屬性的命名系統(tǒng)稱為目錄服務(wù)。LDAP分布式系統(tǒng)常見的三類命名系統(tǒng)復(fù)制與一致性進行復(fù)制的主要原因:可靠性:一個副本被破壞,可以切換到另外的副本,保護數(shù)據(jù),不影響應(yīng)用的運行。性能:并行性、可伸縮性,(服務(wù)器數(shù)量、地域)可均衡負載,提高訪問性能地域擴展,就近訪問,提高性能。復(fù)制是有代價的,副本間要有一致性保證緊密一致

8、性很難達到松馳一致性:一致性放寬的程度主要取決于復(fù)制數(shù)據(jù)的訪問和更新模式,同時還取決于這些數(shù)據(jù)的用途常見的一致性模型以數(shù)據(jù)為中心的一致性模型:假設(shè)并發(fā)進程可能并發(fā)讀寫數(shù)據(jù)存儲以用戶為中心的一致性模型:保證一個客戶對數(shù)據(jù)存儲的訪問是一致的容錯:失效(失?。┠P褪ь愋兔枋霰罎⑿允Х?wù)器停止。但在停止前一直正確工作遺漏性失效 接收遺漏 發(fā)送遺漏服務(wù)器不能響應(yīng)到來的請求服務(wù)器不能接收到來的消息服務(wù)器不能發(fā)送消息定時性失效服務(wù)器的響應(yīng)超出規(guī)定的時間間隔響應(yīng)性失效 值失效 狀態(tài)變遷失效服務(wù)器的響應(yīng)不正確響應(yīng)的值是錯誤的服務(wù)器偏離正確的控制流任意性失效服務(wù)器在任意的時刻產(chǎn)生任意的響應(yīng)可靠的客戶服務(wù)器通信

9、RPC失效5種失效情況客戶服務(wù)器1.定位失敗2.請求消息丟失3.服務(wù)器失敗5.客戶失敗4.應(yīng)答消息丟失進程的容錯復(fù)制進程,用一個容錯的進程組來代替一個脆弱的進程需要多少復(fù)制? 取決于失效類型故障系統(tǒng)的協(xié)定:在有限的步驟內(nèi),所有非故障進程達成某個一致意見如果通信是不可靠的,無法達成協(xié)定兩軍問題如果通信是可靠的,什么情況下可達成協(xié)定?拜占庭將軍問題可靠的分組通信可靠多播:發(fā)送到一個進程組的消息被傳遞到該組的每個成員基本的可靠多播方法:假定所有的接收者已知而且假定不會失敗的簡單可靠多播方法反饋抑制技術(shù)虛擬同步可靠多播:發(fā)送方在多播期間崩潰,也保證可靠多播原子多播: 提供了全序消息傳送的虛擬同步可靠多

10、播。分布式提交分布式提交:具有原子性:要使一個操作被進程組中每一個進程都執(zhí)行或都不執(zhí)行。通常使用協(xié)調(diào)者兩階段提交NoYes向所有參與者發(fā)詢問 Can Commit?可以提交?向所有參與者發(fā)立即提交請求Do Commit接受參與者的回答:Get Decision中止本次提交Abort Commit接受參與者的完成回答Have commited /Have aborted恢復(fù)處理目的: 使系統(tǒng)從錯誤狀態(tài)到正確狀態(tài)類型:向后恢復(fù)向前恢復(fù)檢查點技術(shù)(checkpoint)分布式快照,多米諾效應(yīng)消息日志技術(shù)(logging)基于發(fā)送者也可基于接收者寫日志安全:基本概念一個安全的計算機系統(tǒng),必須具有以下兩

11、個屬性:機密性(Confidentiality):指計算機系統(tǒng)的一種屬性,系統(tǒng)憑借此屬性使得信息只向授權(quán)用戶公開。完整性(Integrity):指對系統(tǒng)資源的變更只能以授權(quán)的方式進行。不適當?shù)淖兏鼞?yīng)該是可以察覺的并可以恢復(fù)的。安全威脅:竊聽、中斷、篡改、偽造安全機制:加密、認證、授權(quán)、審計核心基礎(chǔ):加密對稱加密系統(tǒng):使用相同的密鑰進行一個消息的加密和解密非對稱加密系統(tǒng)(也叫公鑰系統(tǒng)):加密和解密所使用的密鑰不同,但兩個密鑰一起構(gòu)成唯一的一對:符號定義NotationDescriptionKA, BA和B共享的密鑰A的公鑰A的私鑰安全通道安全通道保護發(fā)送者和接收者之間的安全通信通信方必須正確正確

12、:身份認證通信的數(shù)據(jù)保持機密性和完整性機密性:使用加密技術(shù),常使用會話密鑰完整性:數(shù)字簽名身份認證數(shù)字簽名 和消息摘要使用公鑰密碼對一個消息進行數(shù)字簽名Kerberos的身份認證和安全通道建立訪問控制矩陣和權(quán)能在保護對象上ACL 和權(quán)能 的比較 使用 ACL使用 capabilities.密鑰的分發(fā):公鑰證書公鑰分發(fā)可通過使用公鑰證書實現(xiàn)。公鑰證書由一個公鑰與一個標識該公鑰所關(guān)聯(lián)的實體的字符串共同組成該公鑰和標識符共同由認證機構(gòu)簽發(fā),因此此簽名也置于該證書上。主要內(nèi)容第一章 緒論第二章 分布式系統(tǒng)的基本原理第三章 面向?qū)ο蟮姆植加嬎悱h(huán)境第四章 面向構(gòu)件的分布計算環(huán)境第五章 面向Web的分布計算

13、環(huán)境第六章 面向資源整合的分布計算環(huán)境第七章 基于人工智能的分布計算環(huán)境面向?qū)ο蟮姆植加嬎悱h(huán)境 分布式系統(tǒng)中的面向?qū)ο蠹夹g(shù)分布對封裝性、繼承性和對象引用的影響開放分布式處理ODPODP是為了解決什么問題而提出來的?主要內(nèi)容:視點、透明性、功能CORBA技術(shù)OMA體系結(jié)構(gòu)、IDL、ORB面向?qū)ο蟮倪h程方法調(diào)用是如何實現(xiàn)的?Open Distributed ProcessingISO和ITU-T 的開放分布處理模型(ODP-RM)為面向?qū)ο蟮姆植际教幚硖峁┮粋€通用的體系結(jié)構(gòu)框架,將開放式思想引入分布式處理,以解決異構(gòu)系統(tǒng)間各種相關(guān)機制的一致性問題ODP-RM能夠協(xié)調(diào)和指導(dǎo)不同應(yīng)用領(lǐng)域的ODP標準的

14、開發(fā)。 即它是一種框架, 在其上可實現(xiàn)不同的”分布計算環(huán)境”。ODP的主要內(nèi)容主要包含三部分:視點:為清晰地描述復(fù)雜的系統(tǒng),把對ODP系統(tǒng)的說明細化為五個視點(即從五個不同的角度來觀察),以及用于表達這五個視點的語言。透明性:開放式分布處理系統(tǒng)應(yīng)該提供的八個透明性。功能:定義開放式分布處理平臺應(yīng)該具有的功能。 ODP的視點視點解決問題主要內(nèi)容相關(guān)人員企業(yè)視點企業(yè)對信息系統(tǒng)的需求角色,方針,動作,活動企業(yè)管理者,用戶,資源提供者信息視點信息、信息流和信息處理信息對象,不變方案,靜態(tài)方案,動態(tài)方案信息分析員,系統(tǒng)分析員,信息工程師計算視點分布式應(yīng)用的邏輯劃分計算對象,計算接口,接口引用,操作,信號

15、,流,聯(lián)編,聯(lián)編對象系統(tǒng)分析員,系統(tǒng)設(shè)計員工程視點支持應(yīng)用的分布式基礎(chǔ)設(shè)施基本工程對象,存根,聯(lián)編對象,協(xié)議對象,核心,簇,容器,節(jié)點,攔截器,支撐對象操作系統(tǒng)設(shè)計者,通信系統(tǒng)設(shè)計者,系統(tǒng)設(shè)計者技術(shù)視點技術(shù)的獲得和安裝,實現(xiàn)、一致性。技術(shù)解決方案系統(tǒng)集成人員,系統(tǒng)提供商ODP的分布透明性O(shè)DP的分布透明性訪問透明性、位置透明性、重置透明性、持久透明性、遷移透明性、復(fù)制透明性、故障透明性、事務(wù)透明性CORBACommon Object Request Broker Architecture: OMG組織制定的一個工業(yè)規(guī)范,是一個體系結(jié)構(gòu)和一組規(guī)范定義了一系列API、通信協(xié)議、組件/服務(wù)信息模型,

16、使得異質(zhì)應(yīng)用程序能夠互相操作,這些應(yīng)用程序用不同的程序語言編寫,運行在不同的平臺上。 目的:在分布式環(huán)境下實現(xiàn)應(yīng)用的集成,使基于對象的軟件成員,在分布的、異構(gòu)的環(huán)境下可重用、可移植、可互操作。方法:提供一個框架,如果符合這一框架,就可以在主要的硬件平臺和操作系統(tǒng)上建立一個異質(zhì)的分布式應(yīng)用。CORBA的OMA對象管理體系結(jié)構(gòu)OMA:描述了OMG規(guī)范所遵循的概念化的基礎(chǔ)結(jié)構(gòu) CORBA的IDL僅定義接口,不定義實現(xiàn)分隔“對象作什麼 (WHAT)”與“如何做 (HOW)”O(jiān)RBCC+AdaI D LI D LI D LI D LI D LI D LClient SideObject Implemen

17、tation SideCOBOLCAdaC+SmalltalkJAVAI D LI D LI D LI D LI D LI D LORBCOBOLSmalltalkJAVACORBA的ORB對象請求代理ORB(Object Request Broker):定義異構(gòu)環(huán)境下對象透明地發(fā)送請求和接收響應(yīng)的基本機制。ORB 為客戶隱藏:對象位置對象實現(xiàn)方式對象執(zhí)行狀態(tài)對象通信機制為什么在異構(gòu)環(huán)境下能夠透明地發(fā)送請求和接收響應(yīng)?存儲允許ORB的定位和激活對象實現(xiàn)的信息,如Server支持的類、實例化對象、這些對象的ID等運行時信息。對象引用的生成、維護,方法調(diào)用、對象的激活與終止、對象定位等功能。BOA

18、:Basic Object AdapterPOA:Portable Object AdapterDII在Server方的對應(yīng)。DSI從進入的消息找出調(diào)用的目標對象及相應(yīng)的方法,并提供運行時的連接機制。允許動態(tài)地構(gòu)造對象調(diào)用。客戶機可推遲到運行時選擇對象的實現(xiàn)接口和操作。靜態(tài)IDL存根在Server側(cè)的對應(yīng)。由IDL編譯程序自動生成。服務(wù)的靜態(tài)接口。 由IDL編譯程序自動生成。在客戶端,如同一本地調(diào)用,是遠程SERVER對象的代理。訪問某個對象實現(xiàn)所提供的服務(wù)的程序。根據(jù)其接口了解其邏輯結(jié)構(gòu),并通過調(diào)用掌握對象的行為所定義的IDL接口的真正實現(xiàn)??捎谜Z言: C, C+, Java, Smallt

19、alk, Ada 是ORB最關(guān)鍵的部分,負責(zé)請求的通信設(shè)施:對象的定位編組與解組啟動初始服務(wù)屏蔽底層網(wǎng)絡(luò)細節(jié)提供接口庫和其它的APIORB的組成 對象的IDL 接口定義的存儲、分布和管理??蛻魧ο罂梢栽谶\行時查閱接口倉庫的內(nèi)容,獲得對象實現(xiàn)的IDL接口信息,從而向?qū)ο髮崿F(xiàn)發(fā)出請求。當客戶程序要調(diào)用遠程對象上的方法時,首先要得到這個遠程對象的引用,之后就可以像調(diào)用本地方法一樣調(diào)用遠程對象的方法。當發(fā)出一個調(diào)用時,實際上ORB會截取這個調(diào)用(通過客戶Stub完成),因為客戶和服務(wù)器可能在不同的網(wǎng)絡(luò)、不同的操作系統(tǒng)上甚至用不同的語言實現(xiàn),ORB還要負責(zé)將調(diào)用的名字、參數(shù)等編碼成標準的方式(稱Mars

20、haling)通過網(wǎng)絡(luò)傳輸?shù)椒?wù)器方(有時在同一臺機器上也如此),并通過將參數(shù)Unmarshaling的過程,傳到正確的對象上(這整個過程叫重定向,Redirecting),服務(wù)器對象完成處理后,ORB通過同樣的Marshaling/Unmarshaling方式將結(jié)果返回給客戶。ORB內(nèi)核提供的服務(wù)對象接口,同時為客戶方和對象實現(xiàn)方所見,可直接為應(yīng)用程序所使用。CORBA服務(wù)CORBA服務(wù):系統(tǒng)級的對象框架。這些服務(wù)擴展了基本的CORBA體系結(jié)構(gòu)。CORBA 服務(wù)代表了一組預(yù)先實現(xiàn)的,軟件開發(fā)商通常需要的分布式對象,如:命名服務(wù)事務(wù)服務(wù)OMG為每個服務(wù)定義了標準API。實現(xiàn)廠商提供支持這些AP

21、I的具體產(chǎn)品,它們的實現(xiàn)方法可能不同,但接口是一致的。用戶購買、部署需要的服務(wù)產(chǎn)品。在程序中使用時,首先獲取服務(wù)中相應(yīng)對象的IOR,然后調(diào)用它的操作即可。基于CORBA的軟件開發(fā)主要內(nèi)容第一章 緒論第二章 分布式系統(tǒng)的基本原理第三章 面向?qū)ο蟮姆植加嬎悱h(huán)境第四章 面向構(gòu)件的分布計算環(huán)境第五章 面向Web的分布計算環(huán)境第六章 面向資源整合的分布計算環(huán)境第七章 基于人工智能的分布計算環(huán)境 面向構(gòu)件的分布計算環(huán)境軟件構(gòu)件結(jié)構(gòu)框架、構(gòu)件、對象總線構(gòu)件模型EJB和J2EE各類EJB及其相應(yīng)的生命周期函數(shù)EJB容器Java EE輕量級框架和EJB3.0軟件構(gòu)件結(jié)構(gòu)軟件構(gòu)件體系結(jié)構(gòu):本課中對基于構(gòu)件的軟件體

22、系結(jié)構(gòu)的簡稱框架 對問題的部分解決,是讓用戶集成構(gòu)件的架構(gòu)構(gòu)件(組件) 構(gòu)件是軟件的基本單元, 既足夠小,以便于維護,又應(yīng)足夠大,以使之具有功能,可以被打包和使用。構(gòu)件的集成構(gòu)成軟件應(yīng)用。對象總線 是一種機制,使得構(gòu)件和框架能夠調(diào)用分布式環(huán)境中的另一構(gòu)件或框架的服務(wù)。構(gòu)件模型構(gòu)件模型:定義構(gòu)件的基本的體系結(jié)構(gòu),制定它的接口的結(jié)構(gòu),及它與它的容器及另外的組件交互的機制?,F(xiàn)在常用的框架一詞,如Spring框架中的框架,可以理解為是一種構(gòu)件模型構(gòu)件模型構(gòu)件容器此處容器相當于前面介紹的“框架+對象總線”當前主流的幾種構(gòu)件模型:CORBA、DCOM、EJB、SPRINGEJBEJB:Java服務(wù)器端服務(wù)

23、框架的規(guī)范,軟件廠商根據(jù)它來實現(xiàn)EJB服務(wù)器。應(yīng)用程序開發(fā)者可以專注于支持應(yīng)用所需的商業(yè)邏輯,而不用擔(dān)心周圍框架的實現(xiàn)問題。EJB2.X的三個關(guān)鍵構(gòu)件EJBHome接口EJBObject接口EJB實現(xiàn)類EJB的調(diào)用客戶端利用JNDI查找EJB Home??蛻舳死肊JB Home的create方法創(chuàng)建一個 session EJB。本地EJB Home通知容器創(chuàng)建一個遠程 EJB構(gòu)件。容器向客戶端返回EJB Object stub。客戶端調(diào)用EJB Object上的方法,調(diào)用被轉(zhuǎn)發(fā)到遠程的EJB完成。EJB 的分類EJB的分類實體bean會話Bean消息驅(qū)動BeanEJB的生命周期方法State

24、less bean的生命周期 Stateful bean的生命周期BMP bean的生命周期狀態(tài)EJB 的容器遠程連接管理生命周期管理事務(wù)管理容器管理的事務(wù)Bean管理的事務(wù)安全管理聲明性的授權(quán)可編程的授權(quán)資源管理J2EEJava EE輕量級框架典型代表:Spring以依賴注入(Dependency Injection)為代表的解耦合模式,可以讓組件不去依賴容器(運行環(huán)境)的API輕量級容器通過反向控制(Inversion of Control)讓容器具有主動權(quán),去管理插進來的組件,只要組件是符合標準的,就可以被輕量級容器管理組件以POJO(Plain Old Java Object)的形式存

25、在,只要你有Java.exe就可以運行它,不需要容器就可以實現(xiàn)測試行為基于輕量級框架進行系統(tǒng)開發(fā)的時候非常迅速,但對分布系統(tǒng)的實現(xiàn)支持相對較弱。輕量級框架:量級主要由容器的依賴性所決定,依賴性越小,越輕量。 SSH架構(gòu)Spring 核心的主要功能Spring核心提供了以下支持:支持“控制反轉(zhuǎn)/依賴注入”的容器控制反轉(zhuǎn): Inversion of Control 依賴注入:Dependency Injection ,by Martin FowlerAOP框架AOP:Aspect-Oriented Programming服務(wù)抽象層以統(tǒng)一的方式來集成不同的標準接口和第三方API這些功能使程序員可以使

26、用POJO來編寫功能強大并且伸縮性好的應(yīng)用 控制反轉(zhuǎn)與依賴注入 當某個角色(可能是一個Java實例,調(diào)用者)需要另一個角色(另一個Java實例,被調(diào)用者)的協(xié)助時,在 傳統(tǒng)的程序設(shè)計過程中,通常由調(diào)用者來創(chuàng)建被調(diào)用者的實例。但在輕量級容器里,創(chuàng)建被調(diào)用者的工作不再由調(diào)用者來完成,因此稱為控制反轉(zhuǎn);創(chuàng)建被調(diào)用者實例的工作通常由容器來完成,然后注入調(diào)用者,因此稱為依賴注入。顛覆了“使用一個對象之前,必須先創(chuàng)建它”這一編程理念。依賴注入IoC Container依賴注入就是由容器負責(zé)查找被依賴的對象,并注入到依賴bean中,而bean本身不再需要進行JNDI或者context查詢。此外,依賴注入發(fā)生

27、在任何業(yè)務(wù)方法被調(diào)用之前,而且支持setter方法注入和域注入兩種方式。AOP:將橫切面 (Aspect)獨立考慮基于重用的原則,可以將這些“橫切面”的處理邏輯抽象出來,作為一個“Aspect”單獨開發(fā)Aspect可以類比為一個特殊的“類(Class)”開發(fā)完成后可以再次應(yīng)用在所有具有此需求的流程上橫切面關(guān)注點應(yīng)用領(lǐng)域上的關(guān)注點輕量級框架和EJB3.0簡化EJBEJB3.0規(guī)范中主要涉及兩個方面的改變: 一套以標注為基礎(chǔ)的EJB編程模型取消或最小化了很多(以前這些是必須實現(xiàn))回調(diào)方法的實現(xiàn) EJB只是一個加了適當標注的簡單Java對象(POJO)新的實體Bean持久化模型降低了實體Bean及O

28、/R映射模型的復(fù)雜性EJB 3.0 Programming model主要內(nèi)容第一章 緒論第二章 分布式系統(tǒng)的基本原理第三章 面向?qū)ο蟮姆植加嬎悱h(huán)境第四章 面向構(gòu)件的分布計算環(huán)境第五章 面向Web的分布計算環(huán)境第六章 面向資源整合的分布計算環(huán)境第七章 基于人工智能的分布計算環(huán)境基于Web的分布計算技術(shù)XML語義Web為解決什么問題而提出的?Web 2.0特點包含哪些主要技術(shù)Web ServiceXML 由萬維網(wǎng)聯(lián)合組織(W3C :World Wide Web Consortium)制定的最新頁面描述語言標準。元語言。用來對信息進行自我描述。關(guān)注于怎樣描述數(shù)據(jù)內(nèi)容的組織和結(jié)構(gòu),以便數(shù)據(jù)在網(wǎng)絡(luò)上進

29、行交流和處理。被標記的各個數(shù)據(jù)是保持其含義的,因此系統(tǒng)間交換數(shù)據(jù)的可能性極大提高。Internet creates a need for platform-independent technology.XMLHTMLJavaInternetpresentationdataprocessingplatformWhere Does XML fit in ? HTML = Universal Rendering Java = Universal Code XML = Universal DataXML Schema XML schema本身是規(guī)范的XML文檔, 支持的數(shù)據(jù)類型包括數(shù)字型、布爾型、整型

30、、日期時間、 URI、十進制數(shù)等。而且它還支持由這些簡單的類型生成更復(fù)雜的類型。XSL和XSLTDOM 和SAX解析器創(chuàng)建的樹輸入XML文檔對應(yīng)的HandlerXML文檔解析器事件輸入XMLXML的基礎(chǔ)標準之間的相互關(guān)系78語義Web每個資源有ID和清晰的定義,如軟件,文件,人,地點概念之間的關(guān)系有清晰的定義,如軟件產(chǎn)生文件,軟件依賴于軟件,文件的版本,文件具有主題,人所在地點產(chǎn)生依賴于依賴于是的版本主題作者位于Semantic Web - LayersRDF的圖模型RDF的概念模型是圖模型:可把RDF聲明表示為有向、帶標簽的圖。橢圓節(jié)點表示用URI指代的主體和客體方框節(jié)點表示文字類型的客體有

31、向弧標簽則表示用URI指代的謂詞資源/主體客體謂詞/book.html 的創(chuàng)建者是Raymond Lau/book.htmlRaymond Lau創(chuàng)建者81RDF SchemaRDF只是定義了一種描述資源的框架,并沒有定義可以使用哪些詞匯對資源進行描述RDF Schema(簡稱RDFS)實現(xiàn)對RDF的擴展,可用于描述和定義于特定應(yīng)用相關(guān)的類和屬性,從而可創(chuàng)建自定義的詞匯表字典表述語言RDFS的作用:定義資源以及屬性的類別;定義屬性所應(yīng)用的資源類以及屬性值的類型;定義上述類別聲明的語法;申明一些由其它機構(gòu)或組織定義的元數(shù)據(jù)標準的屬性類。82What is Ontology .An ontolog

32、y is a formal, explicit specification of a shared conceptualization Gruber:共享概念模型的明確的規(guī)范說明Conceptualization指通過抽象出客觀世界中一些現(xiàn)象的相關(guān)概念而得到的模型 Explicit指所使用的概念及使用這些概念的約束都有明確的定義Formal指Ontology是計算機可讀的Shared指Ontology中體現(xiàn)的是共同認可的知識,反映的是相關(guān)領(lǐng)域中公認的概念集Web2.0的定義無統(tǒng)一定義定義1:Web 2.0是一個作為平臺的網(wǎng)絡(luò),跨越了所有連接的設(shè)備;Web 2.0的這些應(yīng)用構(gòu)成了這個平臺的優(yōu)勢所

33、在:發(fā)布軟件成為一個持續(xù)更新的服務(wù),并使更多的人更好的使用這種服務(wù);獲取并重組那些包括其他個人用戶在內(nèi)的各種來源的數(shù)據(jù),并對其他人提供自己的數(shù)據(jù)與服務(wù)以便他們以同樣的方式使用;通過一種共享網(wǎng)絡(luò)架構(gòu)的方式高效的創(chuàng)建網(wǎng)絡(luò),并提供比Web 1.0更豐富的用戶體驗”What is Web 2.0,Tim OReilly,2005年10月一種以用戶為中心的網(wǎng)絡(luò)技術(shù)與服務(wù)以用戶參與、用戶互動為典型特征的萬維網(wǎng)互聯(lián)網(wǎng)作為平臺Web 2.0的典型應(yīng)用和技術(shù)BLOGSNS微博社會書簽維基百科Wiki內(nèi)容聚合RSSMash upAjaxWeb Service目標:在現(xiàn)有的各種異構(gòu)平臺的基礎(chǔ)上,構(gòu)筑一個通用的,與應(yīng)

34、用無關(guān)、語言無關(guān)的技術(shù)層,各種不同平臺之上的應(yīng)用依靠這各技術(shù)層來實施彼此的連接和集成;能夠在一個分布式的計算環(huán)境中動態(tài)地描述、發(fā)布、發(fā)現(xiàn)和調(diào)用有利于應(yīng)用的集成HTTP+XML, 最通用的訪問方式基于規(guī)范協(xié)議的訪問接口, 可支持所有平臺和應(yīng)用僅使用Web Service作為訪問界面, 使得所有接入模塊的編寫變得容易XML Web Service什么是一個Web Service: 一個能夠使用XML消息通過網(wǎng)絡(luò)來訪問的服務(wù), 這個服務(wù)的Interface描述了一組可訪問的操作。由SOAP+WSDL包裝的Object適應(yīng)松散耦合的網(wǎng)絡(luò)環(huán)境,可通過Web訪問,手段是SOAP Message服務(wù)的行為、

35、輸入/輸出都可使用WSDL描述WebServiceInterfaceInvocationSOAPWSDLDescriptionServiceRequestorWeb Service體系結(jié)構(gòu)Web Service 體系結(jié)構(gòu)ServiceProviderServiceBrokerServiceRequesterFind/UDDI/WSDLBind/InvokePublish/UDDI/WSDLUDDIRegistryWebServiceClientApplicationSOAPSOAP協(xié)議SOAP信封 :“裝”消息請求和消息數(shù)據(jù)的編碼規(guī)則 RPC調(diào)用規(guī)范 SOAP綁定SOAP是基于平臺獨立的選擇

36、簡單的XML格式 可以在任意平臺采用任意技術(shù) 可以使用開放源代碼資源可采用HTTP承載,方便在Internet范圍內(nèi)傳送WSDLWSDLWhat:Web Service做什么Where:Web Service位于哪里How:怎樣調(diào)用WSDL結(jié)構(gòu)types: 描述將會使用的數(shù)據(jù)類型message: 定義傳入傳出的消息格式portType: 定義了一個入口的類型(使用了怎樣的request/response消息對):單請求、單響應(yīng)、請求/響應(yīng)、響應(yīng)/請求binding: 確定portType將會使用何種傳輸協(xié)議(SOAP/HTTP-POST/)port: 定義了一個關(guān)聯(lián)某個binding的服務(wù)入口

37、service: 一組port組成的Web ServiceRESTful Web Service是指使用HTTP的語法和語義將其功能作為一組可尋址資源提供的Web服務(wù)。使用URI來標識唯一對應(yīng)的資源使用HTTP作為其應(yīng)用協(xié)議使用HTTP的統(tǒng)一方法作為操作資源的抽象方法方法信息(method information)都在HTTP方法中;作用域信息(scoping information)都在URI中。它能很好地利用Web簡單、松耦合的特點。具有可尋址性、無狀態(tài)性、連通性、接口統(tǒng)一性等特點REST與RPC基于SOAP的Web 服務(wù),也稱作RPC Web 服務(wù),RPC是面向過程的,服務(wù)請求者通過調(diào)用

38、過程來執(zhí)行指定的方法面向過程,其關(guān)注點是動作本身HTTP成為一種用于傳輸龐大XML負載(payload)的協(xié)議,而“真正的”描述信息在XML里。最終的服務(wù)變得太過復(fù)雜、難于調(diào)試,而且要求客戶端必須與服務(wù)端具備同樣的配置環(huán)境。REST架構(gòu)是面向資源的,把服務(wù)器端看成是若干資源的大集合,服務(wù)器端把所有的方法、數(shù)據(jù)都暴露為資源供客戶端調(diào)用面向資源,關(guān)注的是資源(名詞)HTTP是其應(yīng)用協(xié)議,繼承了HTTP帶來的簡單性、松耦合性Semantic Web服務(wù)Web Services + Ontology將本體的概念和相應(yīng)技術(shù)引入Web服務(wù)技術(shù)中,同時,由于本體具有豐富的語義和廣泛的關(guān)系,它將變革現(xiàn)有的We

39、b服務(wù),使之成為Semantic Web服務(wù),使Web實現(xiàn)從自動化到智能化的轉(zhuǎn)變成為可能Semantic Web服務(wù):Web服務(wù)的屬性、能力接口和效果均使用無歧義、機器可理解的方式進行編碼。主要內(nèi)容第一章 緒論第二章 分布式系統(tǒng)的基本原理第三章 面向?qū)ο蟮姆植加嬎悱h(huán)境第四章 面向構(gòu)件的分布計算環(huán)境第五章 面向Web的分布計算環(huán)境第六章 面向資源整合的分布計算環(huán)境第七章 基于人工智能的分布計算環(huán)境面向資源整合的分布計算環(huán)境P2P技術(shù)網(wǎng)格計算云計算什么是P2P?對于P2P沒有一個統(tǒng)一的定義定義1:Peer-to-peer is a type of Internet network allowing

40、 a group of computer users with the same networking program to connect with each other for the purposes of directly accessing files from one anothers hard drives. 定義2: P2P是一種分布式網(wǎng)絡(luò),網(wǎng)絡(luò)的參與者共享他們所擁有的一部分硬件資源(處理能力、存儲能力、網(wǎng)絡(luò)連接能力等),這些共享資源需要由網(wǎng)絡(luò)提供服務(wù)和內(nèi)容,能被其它對等節(jié)點(Peer)直接訪問而無需經(jīng)過中間實體。在此網(wǎng)絡(luò)中的參與者既是資源提供者(Server),又是資源獲取者

41、(Client)servent。C/S模式和P2P模式Client/Server模式Peer to Peer 模式P2P網(wǎng)絡(luò)的拓撲結(jié)構(gòu)中心化拓撲全分布式非結(jié)構(gòu)化拓撲全分布式結(jié)構(gòu)化拓撲半分布式拓撲四種結(jié)構(gòu)的比較什么是網(wǎng)格計算是利用網(wǎng)絡(luò)中一些閑置的處理能力來解決復(fù)雜問題的計算模式,適于大型科學(xué)計算和項目研究 ;這種計算模式是利用互聯(lián)網(wǎng)把分散在不同地理位置的電腦組織成一個“虛擬的超級計算機”,其中每一臺參與計算的計算機就是一個“節(jié)點”,而整個計算是由成千上萬個“節(jié)點”組成的“一張網(wǎng)格”, 所以這種計算方式叫網(wǎng)格計算;網(wǎng)格是把整個網(wǎng)絡(luò)整合成一臺巨大的超級計算機,實現(xiàn)計算資源、存儲資源、數(shù)據(jù)資源、信息資

42、源、知識資源、專家資源的全面共享;五層沙漏結(jié)構(gòu)圖OGSAOGSA的三大基本思想:一切都是服務(wù)將資源,信息。數(shù)據(jù)等統(tǒng)一起來,十分有利于靈活的一致的動態(tài)的共享機制的實現(xiàn),使得分布式系統(tǒng)管理有標準的接口和行為網(wǎng)格=網(wǎng)格服務(wù),網(wǎng)格服務(wù)可以以不同的方式聚集起來滿足虛擬組織的需要統(tǒng)一的Web 服務(wù)架構(gòu)自然具備了原來Web Service的所有有利因素:服務(wù)描述和發(fā)現(xiàn);從描述中自動產(chǎn)生客戶和服務(wù)器端的代碼;.突破科技應(yīng)用領(lǐng)域同樣可用于商業(yè)領(lǐng)域網(wǎng)格服務(wù)網(wǎng)格服務(wù)=接口/行為+服務(wù)數(shù)據(jù)云計算定義 云計算是一種商業(yè)計算模型。它將計算任務(wù)分布在大量計算機構(gòu)成的資源池上,使各種應(yīng)用系統(tǒng)能夠根據(jù)需要獲取計算力、存儲空間和

43、信息服務(wù)。 云計算的特征 Cloud Computing: “這是一種計算方式,它能將大量靈活彈性的IT相關(guān)能力打包成服務(wù)提供給使用互聯(lián)網(wǎng)技術(shù)的外部客戶“重要的是結(jié)果.我不關(guān)心它是如何做的.“我不想支付固定投入成本,我更愿意支付彈性使用費,就像用電一樣.“這帶來了規(guī)模經(jīng)濟性,效率和動態(tài)共享.采集模式服務(wù)商業(yè)模式 按需計費技術(shù)模式 可擴展的,彈性的,可共享的訪問模式 互聯(lián)網(wǎng)“ 我想隨時隨地訪問.云計算的特征云計算的三種服務(wù)模式(1)應(yīng)用軟件對最終用戶按需分配e.g.,SAPIs for developing new Cloudappse.g., Google App Web服務(wù)器, 網(wǎng)絡(luò),存儲按

44、需分配e.g., Amazon EC2, S3SaaS(Software as a Service,軟件即服務(wù))PaaS(Platform as a Service,平臺即服務(wù))IaaS(Infrastructure as a Service,基礎(chǔ)架構(gòu)即服務(wù))Each level provides a higher level of service abstraction & may use lower level(s)云計算的三種服務(wù)模式(2)三種服務(wù)模式的構(gòu)建架構(gòu)云計算涉及的技術(shù)虛擬化技術(shù)云計算的基礎(chǔ)容器技術(shù)P云的核心執(zhí)行引擎負載技術(shù)保障平臺各個模塊、服務(wù)器負載均衡存儲技術(shù)云存儲、分布式文

45、件系統(tǒng)X86體系結(jié)構(gòu)虛擬化管理層appGuest osappGuest osappGuest osappGuest osappGuest osappGuest osappGuest osappGuest os應(yīng)用程序操作系統(tǒng)X86體系架構(gòu)1.通過鏡像克隆,一個鏡像啟動多個虛擬機實例,簡化環(huán)境配置2.通過克隆、實時遷移增加、減少及移動應(yīng)用程序,實現(xiàn)應(yīng)用服務(wù)零宕機3.制作應(yīng)用與運行環(huán)境的鏡像,加快應(yīng)用的自動化部署虛擬化優(yōu)勢總結(jié)a.服務(wù)器整合,大大提高了資源利用率b、資源池化,彈性共享Amazon的簡單存儲服務(wù)S3可通過REST/SOAP接口訪問S3系統(tǒng),同時S3也是整個AWS里面大數(shù)據(jù)的最終存儲,

46、比如EBS的快照,AMI的鏡像存儲等等。桶操作API例:CreateBucketDeleteBucket對象操作API例:PutObjectGetObjectDeleteObjectGetObjectAccessControlPolicySetObjectAccessControlPolicyAmazon的彈性計算云EC2提供虛擬機服務(wù),是世界上最大的XEN服務(wù)集群EC2的API非常豐富,提供基于HTTP的QUERY/SOAP方式的接口調(diào)用,總共提供了100多個接口調(diào)用映像操作API例:RegisterImageDescribeImagesDeregisterImage運行實例操作API例:RunInstancesDe

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論