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

下載本文檔

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

文檔簡介

分布計算環(huán)境

課程總結分布計算環(huán)境

課程總結主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論緒論

分布式系統在網絡計算平臺上開發(fā)、部署、管理和維護以資源共享和協同工作為主要應用目標的分布式應用系統分布計算簡單地說,分布式計算是兩個或多個軟件共享信息、協同工作。這些軟件既可以在同一臺計算機上運行,也可在通過網絡連起來的幾臺不同機器上運行。分布計算技術是構成分布式系統的基礎緒論分布式系統分布計算環(huán)境

分布計算環(huán)境:分布計算環(huán)境提供了網絡環(huán)境下不同軟、硬件平臺資源共享和互操作的有效手段,使得分布式計算可以比較方便地得以實現,從而分布式系統可以比較方便地得以構造方便分布式系統的構建:設計、實現、部署、維護分布式計算環(huán)境本身實際上也是分布式系統DistributedComputingEnvironment分布計算環(huán)境分布計算環(huán)境:DistributedComp分布計算環(huán)境的技術基礎

分布式計算環(huán)境構造技術基礎分布在網絡上的程序之間的互操作技術目錄技術、負載平衡技術、容錯技術、事務管理技術、安全技術……面向對象的分布計算環(huán)境簡化面向對象的分布式系統的設計與實現面向構件的分布計算環(huán)境簡化基于構件的分布式系統的設計與實現面向……的分布計算環(huán)境分布計算環(huán)境的技術基礎分布式計算環(huán)境構造技術基礎主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論分布式系統的基本原理體系結構進程通信命名一致性和復制容錯安全

分布式系統的基本原理體系結構分布式系統體系結構樣式1、分層體系結構2、對象的體系結構3、以數據為中心的體系結構4、基于事件的體系結構第N層第N-1層第2層第1層共享數據空間組件組件組件組件組件組件主動倉庫式(黑板式)分布式系統體系結構樣式1、分層體系結構第N層第N-1層第2層系統體系結構系統體系結構:軟件體系結構的具體實例。確定了軟件組件、這些組件的交互以及它們的位置(部署)就是軟件體系結構的一個實例。主要討論 1、集中式體系結構 2、非集中式體系結構,如P2P 3、混合體系結構系統體系結構系統體系結構:軟件體系結構的具體實例。確定了軟件C/S集中式的各種各樣的分層方式如何分層取決于應用系統的具體情況C/S集中式的各種各樣的分層方式如何分層取決于應用系統的具體混合型體系結構將客戶/服務器結構與非集中式結構相結合如:邊界服務器系統(edgeserver)C/SP2P混合型體系結構將客戶/服務器結構與非集中式結構相結合C/SP進程分布式系統中,進程是基本部分,它們構成了不同機器間通信的基礎;分布式系統中的線程對于執(zhí)行阻塞性I/O操作時繼續(xù)使用CPU是非常有用的,如采用多線程方式,可以構建更高效的服務器;客戶進程一般實現用戶接口;通過隱藏與服務器通信的細節(jié),獲得更好的分布透明性;客戶進程可以是多線程的;服務器進程可以實現一種服務也可以實現多種服務,可以是狀態(tài)無關的也可以是狀態(tài)相關的;服務器進程常是多線程實現的;很多服務器組織成集群,通常需隱藏集群內部細節(jié),使用單訪問點將請求消息轉發(fā)給服務器。進程分布式系統中,進程是基本部分,它們構成了不同機器間通信的服務器的有狀態(tài)和無狀態(tài)無狀態(tài)服務器:服務器不保存客戶程序的狀態(tài)例如,Web服務器有狀態(tài)服務器:保存客戶程序的狀態(tài)例如,NFS文件服務器文件使用表(客戶,文件,可更新否)服務器重啟時:恢復故障前狀態(tài)無狀態(tài)服務器也可以實現有狀態(tài)的服務如Web服務器使用Cookie服務器的有狀態(tài)和無狀態(tài)無狀態(tài)服務器:服務器不保存客戶程序的狀通信傳統的分布式系統通過基于傳輸層提供的低層消息來進行通信,如TCP/IP套接字分布計算環(huán)境(中間件)提供更高層次的通信支持RPC、RMI基于消息的通信RPC、RMI等主要提供同步通信功能但在一些應用場合,面向消息的異步通信更方便一些瞬時和持久,同步和異步:這些性質可以組合通信傳統的分布式系統通過基于傳輸層提供的低層消息來進行通信,如:通信持久性和同步性的組合(a)持久異步通信(b)持久同步通信如:通信持久性和同步性的組合(a)持久異步通信通信面向流的通信服務質量QoS數據傳輸要求的比特率創(chuàng)建會話的最大延時端到端最大延時最大往返延時誤碼率丟包率流的同步多播通信從發(fā)送方到多個接收方通信面向流的通信命名名稱在所有計算機系統中都起著非常重要的作用名稱可用來表示實體,基本有3種類型的名稱:地址、標識符、用戶友好的名稱命名系統的主要功能是把名稱解析為它所標識的實體簡單地,命名系統中可以有一個名稱到地址的綁定表如(Name,address)表大型分布式系統,資源眾多,一個表可能無法滿足要求分布式系統中,命名系統的實現本身通常是分布在多臺計算機上的其分布機制對命名系統的效率和可靠性起著關鍵的作用命名名稱在所有計算機系統中都起著非常重要的作用分布式系統常見的三類命名系統無結構命名名稱中不包含任何有關如何定位其相關實體的訪問點的信息:廣播多播、分布式散列表結構化命名簡單的、人類可理解名稱;名稱通常組成名字空間:根節(jié)點、目錄節(jié)點、葉節(jié)點DNS基于屬性的命名常用(屬性、值)來描述實體;基于屬性的命名系統稱為目錄服務。LDAP分布式系統常見的三類命名系統無結構命名分布式系統常見的三類命名系統分布式系統常見的三類命名系統復制與一致性進行復制的主要原因:可靠性:一個副本被破壞,可以切換到另外的副本,保護數據,不影響應用的運行。性能:并行性、可伸縮性,(服務器數量、地域)可均衡負載,提高訪問性能地域擴展,就近訪問,提高性能。復制是有代價的,副本間要有一致性保證緊密一致性很難達到松馳一致性:一致性放寬的程度主要取決于復制數據的訪問和更新模式,同時還取決于這些數據的用途

復制與一致性進行復制的主要原因:常見的一致性模型以數據為中心的一致性模型:假設并發(fā)進程可能并發(fā)讀寫數據存儲以用戶為中心的一致性模型:保證一個客戶對數據存儲的訪問是一致的常見的一致性模型以數據為中心的一致性模型:假設并發(fā)進程可能并容錯:失效(失?。┠P褪ь愋兔枋霰罎⑿允Х掌魍V?。但在停止前一直正確工作遺漏性失效

接收遺漏

發(fā)送遺漏服務器不能響應到來的請求

服務器不能接收到來的消息

服務器不能發(fā)送消息定時性失效服務器的響應超出規(guī)定的時間間隔響應性失效

值失效

狀態(tài)變遷失效服務器的響應不正確

響應的值是錯誤的服務器偏離正確的控制流任意性失效服務器在任意的時刻產生任意的響應容錯:失效(失?。┠P褪ь愋兔枋霰罎⑿允Х掌魍V埂5诳煽康目蛻舴掌魍ㄐ臨PC失效5種失效情況客戶服務器1.定位失敗2.請求消息丟失3.服務器失敗5.客戶失敗4.應答消息丟失可靠的客戶服務器通信RPC失效客戶服務器1.定位失敗2.請求進程的容錯復制進程,用一個容錯的進程組來代替一個脆弱的進程需要多少復制?取決于失效類型故障系統的協定:在有限的步驟內,所有非故障進程達成某個一致意見如果通信是不可靠的,無法達成協定兩軍問題如果通信是可靠的,什么情況下可達成協定?拜占庭將軍問題進程的容錯復制進程,用一個容錯的進程組來代替一個脆弱的進程可靠的分組通信可靠多播:發(fā)送到一個進程組的消息被傳遞到該組的每個成員基本的可靠多播方法:假定所有的接收者已知而且假定不會失敗的簡單可靠多播方法反饋抑制技術虛擬同步可靠多播:發(fā)送方在多播期間崩潰,也保證可靠多播原子多播:提供了全序消息傳送的虛擬同步可靠多播??煽康姆纸M通信可靠多播:發(fā)送到一個進程組的消息被傳遞到該組的分布式提交分布式提交:具有原子性:要使一個操作被進程組中每一個進程都執(zhí)行或都不執(zhí)行。通常使用協調者兩階段提交NoYes向所有參與者發(fā)詢問CanCommit?可以提交?向所有參與者發(fā)立即提交請求DoCommit接受參與者的回答:GetDecision中止本次提交AbortCommit接受參與者的完成回答Havecommited/Haveaborted分布式提交分布式提交:具有原子性:要使一個操作被進程組中每一恢復處理目的:使系統從錯誤狀態(tài)到正確狀態(tài)類型:向后恢復向前恢復檢查點技術(checkpoint)分布式快照,多米諾效應消息日志技術(logging)基于發(fā)送者也可基于接收者寫日志恢復處理目的:使系統從錯誤狀態(tài)到正確狀態(tài)安全:基本概念一個安全的計算機系統,必須具有以下兩個屬性:機密性(Confidentiality):指計算機系統的一種屬性,系統憑借此屬性使得信息只向授權用戶公開。完整性(Integrity):指對系統資源的變更只能以授權的方式進行。不適當的變更應該是可以察覺的并可以恢復的。安全威脅:竊聽、中斷、篡改、偽造安全機制:加密、認證、授權、審計安全:基本概念一個安全的計算機系統,必須具有以下兩個屬性:核心基礎:加密對稱加密系統:使用相同的密鑰進行一個消息的加密和解密非對稱加密系統(也叫公鑰系統):加密和解密所使用的密鑰不同,但兩個密鑰一起構成唯一的一對:符號定義NotationDescriptionKA,BA和B共享的密鑰A的公鑰A的私鑰核心基礎:加密對稱加密系統:使用相同的密鑰進行一個消息的加密安全通道安全通道保護發(fā)送者和接收者之間的安全通信通信方必須正確正確:身份認證通信的數據保持機密性和完整性機密性:使用加密技術,常使用會話密鑰完整性:數字簽名安全通道安全通道保護發(fā)送者和接收者之間的安全通信身份認證身份認證數字簽名和消息摘要使用公鑰密碼對一個消息進行數字簽名數字簽名和消息摘要使用公鑰密碼對一個消息進行數字簽名Kerberos的身份認證和安全通道建立Kerberos的身份認證和安全通道建立訪問控制矩陣和權能在保護對象上ACL和權能的比較使用ACL使用capabilities.訪問控制矩陣和權能在保護對象上ACL和權能的比較使用密鑰的分發(fā):公鑰證書公鑰分發(fā)可通過使用公鑰證書實現。公鑰證書由一個公鑰與一個標識該公鑰所關聯的實體的字符串共同組成該公鑰和標識符共同由認證機構簽發(fā),因此此簽名也置于該證書上。密鑰的分發(fā):公鑰證書公鑰分發(fā)可通過使用公鑰證書實現。主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論面向對象的分布計算環(huán)境

分布式系統中的面向對象技術分布對封裝性、繼承性和對象引用的影響開放分布式處理ODPODP是為了解決什么問題而提出來的?主要內容:視點、透明性、功能CORBA技術OMA體系結構、IDL、ORB面向對象的遠程方法調用是如何實現的?面向對象的分布計算環(huán)境分布式系統中的面向對象技術OpenDistributedProcessingISO和ITU-T的開放分布處理模型(ODP-RM)為面向對象的分布式處理提供一個通用的體系結構框架,將開放式思想引入分布式處理,以解決異構系統間各種相關機制的一致性問題ODP-RM能夠協調和指導不同應用領域的ODP標準的開發(fā)。即它是一種框架,在其上可實現不同的”分布計算環(huán)境”。OpenDistributedProcessingISOODP的主要內容主要包含三部分:視點:為清晰地描述復雜的系統,把對ODP系統的說明細化為五個視點(即從五個不同的角度來觀察),以及用于表達這五個視點的語言。透明性:開放式分布處理系統應該提供的八個透明性。功能:定義開放式分布處理平臺應該具有的功能。

ODP的主要內容主要包含三部分:ODP的視點視點解決問題主要內容相關人員企業(yè)視點企業(yè)對信息系統的需求角色,方針,動作,活動企業(yè)管理者,用戶,資源提供者信息視點信息、信息流和信息處理信息對象,不變方案,靜態(tài)方案,動態(tài)方案信息分析員,系統分析員,信息工程師計算視點分布式應用的邏輯劃分

計算對象,計算接口,接口引用,操作,信號,流,聯編,聯編對象系統分析員,系統設計員工程視點支持應用的分布式基礎設施

基本工程對象,存根,聯編對象,協議對象,核心,簇,容器,節(jié)點,攔截器,支撐對象操作系統設計者,通信系統設計者,系統設計者技術視點技術的獲得和安裝,實現、一致性。技術解決方案系統集成人員,系統提供商ODP的視點視點解決問題主要內容相關人員企業(yè)視點企業(yè)對信息系ODP的分布透明性ODP的分布透明性訪問透明性、位置透明性、重置透明性、持久透明性、遷移透明性、復制透明性、故障透明性、事務透明性ODP的分布透明性ODP的分布透明性CORBACommonObjectRequestBrokerArchitecture:OMG組織制定的一個工業(yè)規(guī)范,是一個體系結構和一組規(guī)范定義了一系列API、通信協議、組件/服務信息模型,使得異質應用程序能夠互相操作,這些應用程序用不同的程序語言編寫,運行在不同的平臺上。目的:在分布式環(huán)境下實現應用的集成,使基于對象的軟件成員,在分布的、異構的環(huán)境下可重用、可移植、可互操作。方法:提供一個框架,如果符合這一框架,就可以在主要的硬件平臺和操作系統上建立一個異質的分布式應用。CORBACommonObjectRequestBroCORBA的OMA對象管理體系結構OMA:描述了OMG規(guī)范所遵循的概念化的基礎結構CORBA的OMA對象管理體系結構OMA:描述了OMG規(guī)范所CORBA的IDL僅定義接口,不定義實現分隔“對象作什麼(WHAT)”與“如何做(HOW)”O(jiān)RBCC++AdaIDLIDLIDLIDLIDLIDLClientSideObjectImplementationSideCOBOLCAdaC++SmalltalkJAVAIDLIDLIDLIDLIDLIDLORBCOBOLSmalltalkJAVACORBA的IDL僅定義接口,不定義實現ORBCC++AdaCORBA的ORB對象請求代理ORB(ObjectRequestBroker):定義異構環(huán)境下對象透明地發(fā)送請求和接收響應的基本機制。ORB為客戶隱藏:對象位置對象實現方式對象執(zhí)行狀態(tài)對象通信機制為什么在異構環(huán)境下能夠透明地發(fā)送請求和接收響應?CORBA的ORB對象請求代理ORB(ObjectRequ存儲允許ORB的定位和激活對象實現的信息,如Server支持的類、實例化對象、這些對象的ID等運行時信息。對象引用的生成、維護,方法調用、對象的激活與終止、對象定位等功能。BOA:BasicObjectAdapterPOA:PortableObjectAdapterDII在Server方的對應。DSI從進入的消息找出調用的目標對象及相應的方法,并提供運行時的連接機制。允許動態(tài)地構造對象調用??蛻魴C可推遲到運行時選擇對象的實現接口和操作。靜態(tài)IDL存根在Server側的對應。由IDL編譯程序自動生成。服務的靜態(tài)接口。由IDL編譯程序自動生成。在客戶端,如同一本地調用,是遠程SERVER對象的代理。訪問某個對象實現所提供的服務的程序。根據其接口了解其邏輯結構,并通過調用掌握對象的行為所定義的IDL接口的真正實現??捎谜Z言:C,C++,Java,Smalltalk,Ada…是ORB最關鍵的部分,負責請求的通信設施:對象的定位編組與解組啟動初始服務屏蔽底層網絡細節(jié)提供接口庫和其它的APIORB的組成

對象的IDL接口定義的存儲、分布和管理??蛻魧ο罂梢栽谶\行時查閱接口倉庫的內容,獲得對象實現的IDL接口信息,從而向對象實現發(fā)出請求。當客戶程序要調用遠程對象上的方法時,首先要得到這個遠程對象的引用,之后就可以像調用本地方法一樣調用遠程對象的方法。當發(fā)出一個調用時,實際上ORB會截取這個調用(通過客戶Stub完成),因為客戶和服務器可能在不同的網絡、不同的操作系統上甚至用不同的語言實現,ORB還要負責將調用的名字、參數等編碼成標準的方式(稱Marshaling)通過網絡傳輸到服務器方(有時在同一臺機器上也如此),并通過將參數Unmarshaling的過程,傳到正確的對象上(這整個過程叫重定向,Redirecting),服務器對象完成處理后,ORB通過同樣的Marshaling/Unmarshaling方式將結果返回給客戶。ORB內核提供的服務對象接口,同時為客戶方和對象實現方所見,可直接為應用程序所使用。存儲允許ORB的定位和激活對象引用的生成、維護,DII在SeCORBA服務CORBA服務:系統級的對象框架。這些服務擴展了基本的CORBA體系結構。CORBA服務代表了一組預先實現的,軟件開發(fā)商通常需要的分布式對象,如:命名服務事務服務OMG為每個服務定義了標準API。實現廠商提供支持這些API的具體產品,它們的實現方法可能不同,但接口是一致的。用戶購買、部署需要的服務產品。在程序中使用時,首先獲取服務中相應對象的IOR,然后調用它的操作即可。CORBA服務CORBA服務:系統級的對象框架。這些服務擴展基于CORBA的軟件開發(fā)基于CORBA的軟件開發(fā)主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論

面向構件的分布計算環(huán)境軟件構件結構框架、構件、對象總線構件模型EJB和J2EE各類EJB及其相應的生命周期函數EJB容器JavaEE輕量級框架和EJB3.0面向構件的分布計算環(huán)境軟件構件結構軟件構件結構軟件構件體系結構:本課中對基于構件的軟件體系結構的簡稱框架—對問題的部分解決,是讓用戶集成構件的架構構件(組件)—構件是軟件的基本單元,既足夠小,以便于維護,又應足夠大,以使之具有功能,可以被打包和使用。構件的集成構成軟件應用。對象總線—是一種機制,使得構件和框架能夠調用分布式環(huán)境中的另一構件或框架的服務。軟件構件結構軟件構件體系結構:本課中對基于構件的軟件體系結構構件模型構件模型:定義構件的基本的體系結構,制定它的接口的結構,及它與它的容器及另外的組件交互的機制。現在常用的框架一詞,如Spring框架中的框架,可以理解為是一種構件模型構件模型=構件+容器此處容器相當于前面介紹的“框架+對象總線”當前主流的幾種構件模型:CORBA、DCOM、EJB、SPRING構件模型構件模型:定義構件的基本的體系結構,制定它的接口的結EJBEJB:Java服務器端服務框架的規(guī)范,軟件廠商根據它來實現EJB服務器。應用程序開發(fā)者可以專注于支持應用所需的商業(yè)邏輯,而不用擔心周圍框架的實現問題。EJB2.X的三個關鍵構件EJBHome接口EJBObject接口EJB實現類EJBEJB:Java服務器端服務框架的規(guī)范,軟件廠商根據它EJB的調用客戶端利用JNDI查找EJBHome??蛻舳死肊JBHome的create方法創(chuàng)建一個sessionEJB。本地EJBHome通知容器創(chuàng)建一個遠程EJB構件。容器向客戶端返回EJBObjectstub。客戶端調用EJBObject上的方法,調用被轉發(fā)到遠程的EJB完成。EJB的調用客戶端利用JNDI查找EJBHome。

EJB的分類EJB的分類實體bean會話Bean消息驅動BeanEJB的生命周期方法

EJB的分類EJB的分類Statelessbean的生命周期

Statelessbean的生命周期

Statefulbean的生命周期Statefulbean的生命周期BMPbean的生命周期狀態(tài)BMPbean的生命周期狀態(tài)

EJB的容器遠程連接管理生命周期管理事務管理容器管理的事務Bean管理的事務安全管理聲明性的授權可編程的授權資源管理

EJB的容器遠程連接管理

J2EE

J2EE

JavaEE

JavaEE輕量級框架典型代表:Spring以依賴注入(DependencyInjection)為代表的解耦合模式,可以讓組件不去依賴容器(運行環(huán)境)的API輕量級容器通過反向控制(InversionofControl)讓容器具有主動權,去管理插進來的組件,只要組件是符合標準的,就可以被輕量級容器管理組件以POJO(PlainOldJavaObject)的形式存在,只要你有Java.exe就可以運行它,不需要容器就可以實現測試行為基于輕量級框架進行系統開發(fā)的時候非常迅速,但對分布系統的實現支持相對較弱。

輕量級框架:量級主要由容器的依賴性所決定,依賴性越小,越輕量。

輕量級框架典型代表:Spring輕量級框架:量級主要由容器的SSH架構SSH架構Spring核心的主要功能Spring核心提供了以下支持:支持“控制反轉/依賴注入”的容器控制反轉:InversionofControl依賴注入:DependencyInjection,byMartinFowlerAOP框架AOP:Aspect-OrientedProgramming服務抽象層以統一的方式來集成不同的標準接口和第三方API這些功能使程序員可以使用POJO來編寫功能強大并且伸縮性好的應用

Spring核心的主要功能Spring核心提供了以下支持:控制反轉與依賴注入當某個角色(可能是一個Java實例,調用者)需要另一個角色(另一個Java實例,被調用者)的協助時,在傳統的程序設計過程中,通常由調用者來創(chuàng)建被調用者的實例。但在輕量級容器里,創(chuàng)建被調用者的工作不再由調用者來完成,因此稱為控制反轉;創(chuàng)建被調用者實例的工作通常由容器來完成,然后注入調用者,因此稱為依賴注入。顛覆了“使用一個對象之前,必須先創(chuàng)建它”這一編程理念??刂品崔D與依賴注入當某個角色(可能是一個Java實例依賴注入IoCContainer依賴注入就是由容器負責查找被依賴的對象,并注入到依賴bean中,而bean本身不再需要進行JNDI或者context查詢。此外,依賴注入發(fā)生在任何業(yè)務方法被調用之前,而且支持setter方法注入和域注入兩種方式。

依賴注入IoCContainer依賴注入就是由容器負責查找AOP:將橫切面

(Aspect)獨立考慮基于重用的原則,可以將這些“橫切面”的處理邏輯抽象出來,作為一個“Aspect”單獨開發(fā)Aspect可以類比為一個特殊的“類(Class)”開發(fā)完成后可以再次應用在所有具有此需求的流程上橫切面關注點應用領域上的關注點AOP:將橫切面(Aspect)獨立考慮基于重用的原則,可輕量級框架和EJB3.0簡化EJBEJB3.0規(guī)范中主要涉及兩個方面的改變:

一套以標注為基礎的EJB編程模型取消或最小化了很多(以前這些是必須實現)回調方法的實現

EJB只是一個加了適當標注的簡單Java對象(POJO)新的實體Bean持久化模型降低了實體Bean及O/R映射模型的復雜性輕量級框架和EJB3.0簡化EJBEJB3.0ProgrammingmodelEJB3.0Programmingmodel主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論基于Web的分布計算技術XML語義Web為解決什么問題而提出的?Web2.0特點包含哪些主要技術WebService基于Web的分布計算技術XMLXML由萬維網聯合組織(W3C:WorldWideWebConsortium)制定的最新頁面描述語言標準。元語言。用來對信息進行自我描述。關注于怎樣描述數據內容的組織和結構,以便數據在網絡上進行交流和處理。被標記的各個數據是保持其含義的,因此系統間交換數據的可能性極大提高。XML由萬維網聯合組織(W3C:WorldWideWInternetcreatesaneedforplatform-independenttechnology.XMLHTMLJavaInternetpresentationdataprocessingplatformWhereDoesXMLfitin?HTML=UniversalRenderingJava=UniversalCodeXML=UniversalDataInternetcreatesaneedforplXMLSchemaXMLschema本身是規(guī)范的XML文檔,支持的數據類型包括數字型、布爾型、整型、日期時間、URI、十進制數等。而且它還支持由這些簡單的類型生成更復雜的類型。XMLSchemaXMLschema本身是規(guī)范的XMLXSL和XSLTXSL和XSLTDOM和SAX解析器創(chuàng)建的樹輸入XML文檔對應的HandlerXML文檔解析器事件輸入DOM和SAX解析器創(chuàng)建的樹輸入XML對應的XML解析器事XMLXML的基礎標準之間的相互關系XMLXML的基礎標準之間的相互關系78語義Web每個資源有ID和清晰的定義,如軟件,文件,人,地點概念之間的關系有清晰的定義,如軟件產生文件,軟件依賴于軟件,文件的版本,文件具有主題,人所在地點產生依賴于依賴于是…的版本主題作者位于78語義Web每個資源有ID和清晰的定義,如軟件,文件,人,SemanticWeb-LayersSemanticWeb-LayersRDF的圖模型RDF的概念模型是圖模型:可把RDF聲明表示為有向、帶標簽的圖。橢圓節(jié)點表示用URI指代的主體和客體方框節(jié)點表示文字類型的客體有向弧標簽則表示用URI指代的謂詞資源/主體客體謂詞RaymondLau創(chuàng)建者RDF的圖模型RDF的概念模型是圖模型:可把RDF聲明表示為81RDFSchemaRDF只是定義了一種描述資源的框架,并沒有定義可以使用哪些詞匯對資源進行描述RDFSchema(簡稱RDFS)實現對RDF的擴展,可用于描述和定義于特定應用相關的類和屬性,從而可創(chuàng)建自定義的詞匯表字典表述語言RDFS的作用:定義資源以及屬性的類別;定義屬性所應用的資源類以及屬性值的類型;定義上述類別聲明的語法;申明一些由其它機構或組織定義的元數據標準的屬性類。81RDFSchemaRDF只是定義了一種描述資源的框架,82WhatisOntology...Anontologyisaformal,explicitspecificationofasharedconceptualization–Gruber:共享概念模型的明確的規(guī)范說明‘Conceptualization’指通過抽象出客觀世界中一些現象的相關概念而得到的模型‘Explicit’指所使用的概念及使用這些概念的約束都有明確的定義‘Formal’指Ontology是計算機可讀的‘Shared’指Ontology中體現的是共同認可的知識,反映的是相關領域中公認的概念集82WhatisOntology...AnontolWeb2.0的定義無統一定義定義1:Web2.0是一個作為平臺的網絡,跨越了所有連接的設備;Web2.0的這些應用構成了這個平臺的優(yōu)勢所在:發(fā)布軟件成為一個持續(xù)更新的服務,并使更多的人更好的使用這種服務;獲取并重組那些包括其他個人用戶在內的各種來源的數據,并對其他人提供自己的數據與服務以便他們以同樣的方式使用;通過一種‘共享網絡架構’的方式高效的創(chuàng)建網絡,并提供比Web1.0更豐富的用戶體驗”《WhatisWeb2.0》,TimO’Reilly,2005年10月一種以用戶為中心的網絡技術與服務以用戶參與、用戶互動為典型特征的萬維網Web2.0的定義無統一定義互聯網作為平臺互聯網作為平臺Web

2.0的典型應用和技術BLOGSNS微博社會書簽維基百科Wiki內容聚合RSSMash

upAjaxWeb2.0的典型應用和技術BLOGWebService目標:在現有的各種異構平臺的基礎上,構筑一個通用的,與應用無關、語言無關的技術層,各種不同平臺之上的應用依靠這各技術層來實施彼此的連接和集成;能夠在一個分布式的計算環(huán)境中動態(tài)地描述、發(fā)布、發(fā)現和調用有利于應用的集成HTTP+XML,最通用的訪問方式基于規(guī)范協議的訪問接口,可支持所有平臺和應用僅使用WebService作為訪問界面,使得所有接入模塊的編寫變得容易WebService目標:在現有的各種異構平臺的基礎上,構XMLWebService什么是一個WebService:一個能夠使用XML消息通過網絡來訪問的服務,這個服務的Interface描述了一組可訪問的操作。由SOAP+WSDL包裝的Object適應松散耦合的網絡環(huán)境,可通過Web訪問,手段是SOAPMessage服務的行為、輸入/輸出都可使用WSDL描述WebServiceInterfaceInvocationSOAPWSDLDescriptionServiceRequestorXMLWebService什么是一個WebServicWebService體系結構WebService體系結構ServiceProviderServiceBrokerServiceRequesterFind/UDDI/WSDLBind/InvokePublish/UDDI/WSDLUDDIRegistryWebServiceClientApplicationSOAPWebService體系結構WebService體系結SOAP協議SOAP信封:“裝”消息請求和消息數據的編碼規(guī)則RPC調用規(guī)范SOAP綁定SOAP是基于平臺獨立的選擇簡單的XML格式可以在任意平臺采用任意技術可以使用開放源代碼資源可采用HTTP承載,方便在Internet范圍內傳送SOAP協議SOAPWSDLWSDLWhat:WebService做什么Where:WebService位于哪里How:怎樣調用WSDL結構types:描述將會使用的數據類型message:定義傳入傳出的消息格式portType:定義了一個入口的類型(使用了怎樣的request/response消息對):單請求、單響應、請求/響應、響應/請求binding:確定portType將會使用何種傳輸協議(SOAP/HTTP-POST/…)port:定義了一個關聯某個binding的服務入口service:一組port組成的WebServiceWSDLWSDLRESTfulWebService是指使用HTTP的語法和語義將其功能作為一組可尋址資源提供的Web服務。使用URI來標識唯一對應的資源使用HTTP作為其應用協議使用HTTP的統一方法作為操作資源的抽象方法方法信息(methodinformation)都在HTTP方法中;作用域信息(scopinginformation)都在URI中。它能很好地利用Web簡單、松耦合的特點。具有可尋址性、無狀態(tài)性、連通性、接口統一性等特點RESTfulWebService是指使用HTTP的語法REST與RPC基于SOAP的Web服務,也稱作RPCWeb服務,RPC是面向過程的,服務請求者通過調用過程來執(zhí)行指定的方法面向過程,其關注點是動作本身HTTP成為一種用于傳輸龐大XML負載(payload)的協議,而“真正的”描述信息在XML里。最終的服務變得太過復雜、難于調試,而且要求客戶端必須與服務端具備同樣的配置環(huán)境。REST架構是面向資源的,把服務器端看成是若干資源的大集合,服務器端把所有的方法、數據都暴露為資源供客戶端調用面向資源,關注的是資源(名詞)HTTP是其應用協議,繼承了HTTP帶來的簡單性、松耦合性REST與RPC基于SOAP的Web服務,也稱作RPCWSemanticWeb服務WebServices+Ontology將本體的概念和相應技術引入Web服務技術中,同時,由于本體具有豐富的語義和廣泛的關系,它將變革現有的Web服務,使之成為SemanticWeb服務,使Web實現從自動化到智能化的轉變成為可能SemanticWeb服務:Web服務的屬性、能力接口和效果均使用無歧義、機器可理解的方式進行編碼。SemanticWeb服務WebServices+O主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論面向資源整合的分布計算環(huán)境P2P技術網格計算云計算面向資源整合的分布計算環(huán)境P2P技術什么是P2P?對于P2P沒有一個統一的定義定義1:Peer-to-peerisatypeofInternetnetworkallowingagroupofcomputeruserswiththesamenetworkingprogramtoconnectwitheachotherforthepurposesofdirectlyaccessingfilesfromoneanother'sharddrives.定義2:P2P是一種分布式網絡,網絡的參與者共享他們所擁有的一部分硬件資源(處理能力、存儲能力、網絡連接能力等),這些共享資源需要由網絡提供服務和內容,能被其它對等節(jié)點(Peer)直接訪問而無需經過中間實體。在此網絡中的參與者既是資源提供者(Server),又是資源獲取者(Client)servent。……什么是P2P?對于P2P沒有一個統一的定義C/S模式和P2P模式Client/Server模式PeertoPeer模式C/S模式和P2P模式Client/Server模式PeerP2P網絡的拓撲結構中心化拓撲全分布式非結構化拓撲全分布式結構化拓撲半分布式拓撲P2P網絡的拓撲結構中心化拓撲四種結構的比較四種結構的比較什么是網格計算是利用網絡中一些閑置的處理能力來解決復雜問題的計算模式,適于大型科學計算和項目研究;這種計算模式是利用互聯網把分散在不同地理位置的電腦組織成一個“虛擬的超級計算機”,其中每一臺參與計算的計算機就是一個“節(jié)點”,而整個計算是由成千上萬個“節(jié)點”組成的“一張網格”,所以這種計算方式叫網格計算;網格是把整個網絡整合成一臺巨大的超級計算機,實現計算資源、存儲資源、數據資源、信息資源、知識資源、專家資源的全面共享;什么是網格計算是利用網絡中一些閑置的處理能力來解決復雜問題的五層沙漏結構圖五層沙漏結構圖OGSAOGSA的三大基本思想:一切都是服務將資源,信息。數據等統一起來,十分有利于靈活的一致的動態(tài)的共享機制的實現,使得分布式系統管理有標準的接口和行為網格={網格服務},網格服務可以以不同的方式聚集起來滿足虛擬組織的需要統一的Web服務架構自然具備了原來WebService的所有有利因素:服務描述和發(fā)現;從描述中自動產生客戶和服務器端的代碼;…….突破科技應用領域同樣可用于商業(yè)領域OGSAOGSA的三大基本思想:網格服務網格服務=接口/行為+服務數據網格服務網格服務=接口/行為+服務數據云計算定義云計算是一種商業(yè)計算模型。它將計算任務分布在大量計算機構成的資源池上,使各種應用系統能夠根據需要獲取計算力、存儲空間和信息服務。云計算定義云計算是一種商業(yè)計算模型。它將計算任務分布

云計算的特征

CloudComputing:

“這是一種計算方式,它能將大量靈活彈性的IT相關能力打包成服務提供給使用互聯網技術的外部客戶"“重要的是結果.

我不關心它是如何做的."“我不想支付固定投入成本,我更愿意支付彈性使用費,就像用電一樣."“這帶來了規(guī)模經濟性,效率和動態(tài)共享."采集模式服務商業(yè)模式

按需計費技術模式

可擴展的,彈性的,可共享的訪問模式

互聯網“我想隨時隨地訪問."云計算的特征云計算的特征CloudComputing:“重要的是云計算的三種服務模式(1)應用軟件對最終用戶按需分配e.g.,SAPIsfordevelopingnewCloudappse.g.,GoogleAppWeb服務器,網絡,存儲按需分配e.g.,AmazonEC2,S3SaaS(SoftwareasaService,軟件即服務)PaaS(PlatformasaService,平臺即服務)IaaS(InfrastructureasaService,基礎架構即服務)Eachlevelprovidesahigherlevelofserviceabstraction&mayuselowerlevel(s)云計算的三種服務模式(1)應用軟件對最終用戶按需分配SaaS云計算的三種服務模式(2)三種服務模式的構建架構云計算的三種服務模式(2)三種服務模式的構建架構云計算涉及的技術虛擬化技術云計算的基礎容器技術P云的核心執(zhí)行引擎負載技術保障平臺各個模塊、服務器負載均衡存儲技術云存儲、分布式文件系統云計算涉及的技術虛擬化技術X86體系結構虛擬化管理層appGuestosappGuestosappGuestosappGuestosappGuestosappGuestosappGuestosappGuestos應用程序操作系統X86體系架構1.通過鏡像克隆,一個鏡像啟動多個虛擬機實例,簡化環(huán)境配置2.通過克隆、實時遷移增加、減少及移動應用程序,實現應用服務零宕機3.制作應用與運行環(huán)境的鏡像,加快應用的自動化部署虛擬化優(yōu)勢總結a.服務器整合,大大提高了資源利用率b、資源池化,彈性共享X86體系結構虛擬化管理層appGuestosappGueAmazon的簡單存儲服務S3可通過REST/SOAP接口訪問S3系統,同時S3也是整個AWS里面大數據的最終存儲,比如EBS的快照,AMI的鏡像存儲等等。桶操作API例:CreateBucketDeleteBucket對象操作API例:PutObjectGetObjectDeleteObjectGetObjectAccessControlPolicySetObjectAccessControlPolicyAmazon的簡單存儲服務S3可通過REST/SOAP接口訪Amazon的彈性計算云EC2提供虛擬機服務,是世界上最大的XEN服務集群EC2的API非常豐富,提供基于HTTP的QUERY/SOAP方式的接口調用,總共提供了100多個接口調用映像操作API例:RegisterImageDescribeImagesDeregisterImage運行實例操作API例:RunInstancesDescribeInstancesTerminateInstancesGetConsoleOutputRebootInstancesAmazon的彈性計算云EC2提供虛擬機服務,是世界上最大的Amazon的簡單存儲服務S3可通過REST/SOAP接口訪問S3系統,同時S3也是整個AWS里面大數據的最終存儲,比如EBS的快照,AMI的鏡像存儲等等。桶操作API例:CreateBucketDeleteBucket對象操作API例:PutObjectGetObjectDeleteObjectGetObjectAccessControlPolicySetObjectAccessControlPolicyAmazon的簡單存儲服務S3可通過REST/SOAP接口訪Amazon的彈性計算云EC2提供虛擬機服務,是世界上最大的XEN服務集群EC2的API非常豐富,提供基于HTTP的QUERY/SOAP方式的接口調用,總共提供了100多個接口調用映像操作API例:RegisterImageDescribeImagesDeregisterImage運行實例操作API例:RunInstancesDescribeInstancesTerminateInstancesGetConsoleOutputRebootInstancesAmazon的彈性計算云EC2提供虛擬機服務,是世界上最大的單一Master,若干ChunkServerGFS的架構1、文件存儲方式2、數據讀寫流程單一Master,若干ChunkServerGFS的架構1MapReduce基本工作流程MapReduce基本工作流程主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論基于人工智能的代理技術代理:信息世界中的軟件實體。具有一定程度的智能,其智能化的程度可以從簡單的預定義規(guī)則到復雜的自學習人工智能推理機。自治性代理性智能性移動性代理語言編程語言通信語言內容語言基于人工智能的代理技術代理:信息世界中的軟件實體。具有一定程多代理技術多代理系統:支持代理之間的通信協調協作式多代理系統(CMAS)自利益多代理系統(SMAS)優(yōu)點多代理技術多代理系統:支持代理之間的通信移動代理技術移動代理:一個能在異構網絡中自主地從一臺主機遷移到另一臺主機并與其它代理或資源交互的程序。移動代理遷移的內容=代碼+運行狀態(tài)遠端執(zhí)行代碼遷移移動代理環(huán)境移動代理的優(yōu)點移動代理技術移動代理:一個能在異構網絡中自主地從一臺主機遷移移動代理的實現Grosshoper中的代理要繼承Grosshoper已經定義的類如:Mobileagents:繼承de.ikv.grasshopper.agent.MobileAgent的類的實例。Move():該方法使得一個Agent可以遷移到一個新的Agency或者Place。BeforeMove():當一個Agent遷移之前,該方法將被Agency自動調用;AfterMove():當一個Agent遷移到一個新的Agency/place時,該方法將被新的Agency自動調用live(...):每個Grasshoper代理最基本的方法。它是唯一一個必須由Agent開發(fā)者重載的方法。一旦一個Agent的live方法運行結束,該代理的執(zhí)行線程就結束了,該代理就變成了一個普通的Java對象。移動代理的實現Grosshoper中的代理要繼承Grossh主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論分布計算環(huán)境分布計算環(huán)境提供了網絡環(huán)境下不同軟、硬件平臺資源共享和互操作的有效手段,使得分布式計算可以比較方便地得以實現,從而分布式系統可以比較方便地得以構造方便分布式系統的構建:設計、實現、部署、維護分布式計算環(huán)境本身實際上也是分布式系統分布式計算環(huán)境構造技術基礎分布在網絡上的程序之間的互操作技術目錄技術、負載平衡技術、容錯技術、事務管理技術、安全技術……分布計算環(huán)境分布計算環(huán)境提供了網絡環(huán)境下不同軟、硬件平臺資源演講完畢,謝謝觀看!演講完畢,謝謝觀看!分布計算環(huán)境

課程總結分布計算環(huán)境

課程總結主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論緒論

分布式系統在網絡計算平臺上開發(fā)、部署、管理和維護以資源共享和協同工作為主要應用目標的分布式應用系統分布計算簡單地說,分布式計算是兩個或多個軟件共享信息、協同工作。這些軟件既可以在同一臺計算機上運行,也可在通過網絡連起來的幾臺不同機器上運行。分布計算技術是構成分布式系統的基礎緒論分布式系統分布計算環(huán)境

分布計算環(huán)境:分布計算環(huán)境提供了網絡環(huán)境下不同軟、硬件平臺資源共享和互操作的有效手段,使得分布式計算可以比較方便地得以實現,從而分布式系統可以比較方便地得以構造方便分布式系統的構建:設計、實現、部署、維護分布式計算環(huán)境本身實際上也是分布式系統DistributedComputingEnvironment分布計算環(huán)境分布計算環(huán)境:DistributedComp分布計算環(huán)境的技術基礎

分布式計算環(huán)境構造技術基礎分布在網絡上的程序之間的互操作技術目錄技術、負載平衡技術、容錯技術、事務管理技術、安全技術……面向對象的分布計算環(huán)境簡化面向對象的分布式系統的設計與實現面向構件的分布計算環(huán)境簡化基于構件的分布式系統的設計與實現面向……的分布計算環(huán)境分布計算環(huán)境的技術基礎分布式計算環(huán)境構造技術基礎主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論分布式系統的基本原理體系結構進程通信命名一致性和復制容錯安全

分布式系統的基本原理體系結構分布式系統體系結構樣式1、分層體系結構2、對象的體系結構3、以數據為中心的體系結構4、基于事件的體系結構第N層第N-1層第2層第1層共享數據空間組件組件組件組件組件組件主動倉庫式(黑板式)分布式系統體系結構樣式1、分層體系結構第N層第N-1層第2層系統體系結構系統體系結構:軟件體系結構的具體實例。確定了軟件組件、這些組件的交互以及它們的位置(部署)就是軟件體系結構的一個實例。主要討論 1、集中式體系結構 2、非集中式體系結構,如P2P 3、混合體系結構系統體系結構系統體系結構:軟件體系結構的具體實例。確定了軟件C/S集中式的各種各樣的分層方式如何分層取決于應用系統的具體情況C/S集中式的各種各樣的分層方式如何分層取決于應用系統的具體混合型體系結構將客戶/服務器結構與非集中式結構相結合如:邊界服務器系統(edgeserver)C/SP2P混合型體系結構將客戶/服務器結構與非集中式結構相結合C/SP進程分布式系統中,進程是基本部分,它們構成了不同機器間通信的基礎;分布式系統中的線程對于執(zhí)行阻塞性I/O操作時繼續(xù)使用CPU是非常有用的,如采用多線程方式,可以構建更高效的服務器;客戶進程一般實現用戶接口;通過隱藏與服務器通信的細節(jié),獲得更好的分布透明性;客戶進程可以是多線程的;服務器進程可以實現一種服務也可以實現多種服務,可以是狀態(tài)無關的也可以是狀態(tài)相關的;服務器進程常是多線程實現的;很多服務器組織成集群,通常需隱藏集群內部細節(jié),使用單訪問點將請求消息轉發(fā)給服務器。進程分布式系統中,進程是基本部分,它們構成了不同機器間通信的服務器的有狀態(tài)和無狀態(tài)無狀態(tài)服務器:服務器不保存客戶程序的狀態(tài)例如,Web服務器有狀態(tài)服務器:保存客戶程序的狀態(tài)例如,NFS文件服務器文件使用表(客戶,文件,可更新否)服務器重啟時:恢復故障前狀態(tài)無狀態(tài)服務器也可以實現有狀態(tài)的服務如Web服務器使用Cookie服務器的有狀態(tài)和無狀態(tài)無狀態(tài)服務器:服務器不保存客戶程序的狀通信傳統的分布式系統通過基于傳輸層提供的低層消息來進行通信,如TCP/IP套接字分布計算環(huán)境(中間件)提供更高層次的通信支持RPC、RMI基于消息的通信RPC、RMI等主要提供同步通信功能但在一些應用場合,面向消息的異步通信更方便一些瞬時和持久,同步和異步:這些性質可以組合通信傳統的分布式系統通過基于傳輸層提供的低層消息來進行通信,如:通信持久性和同步性的組合(a)持久異步通信(b)持久同步通信如:通信持久性和同步性的組合(a)持久異步通信通信面向流的通信服務質量QoS數據傳輸要求的比特率創(chuàng)建會話的最大延時端到端最大延時最大往返延時誤碼率丟包率流的同步多播通信從發(fā)送方到多個接收方通信面向流的通信命名名稱在所有計算機系統中都起著非常重要的作用名稱可用來表示實體,基本有3種類型的名稱:地址、標識符、用戶友好的名稱命名系統的主要功能是把名稱解析為它所標識的實體簡單地,命名系統中可以有一個名稱到地址的綁定表如(Name,address)表大型分布式系統,資源眾多,一個表可能無法滿足要求分布式系統中,命名系統的實現本身通常是分布在多臺計算機上的其分布機制對命名系統的效率和可靠性起著關鍵的作用命名名稱在所有計算機系統中都起著非常重要的作用分布式系統常見的三類命名系統無結構命名名稱中不包含任何有關如何定位其相關實體的訪問點的信息:廣播多播、分布式散列表結構化命名簡單的、人類可理解名稱;名稱通常組成名字空間:根節(jié)點、目錄節(jié)點、葉節(jié)點DNS基于屬性的命名常用(屬性、值)來描述實體;基于屬性的命名系統稱為目錄服務。LDAP分布式系統常見的三類命名系統無結構命名分布式系統常見的三類命名系統分布式系統常見的三類命名系統復制與一致性進行復制的主要原因:可靠性:一個副本被破壞,可以切換到另外的副本,保護數據,不影響應用的運行。性能:并行性、可伸縮性,(服務器數量、地域)可均衡負載,提高訪問性能地域擴展,就近訪問,提高性能。復制是有代價的,副本間要有一致性保證緊密一致性很難達到松馳一致性:一致性放寬的程度主要取決于復制數據的訪問和更新模式,同時還取決于這些數據的用途

復制與一致性進行復制的主要原因:常見的一致性模型以數據為中心的一致性模型:假設并發(fā)進程可能并發(fā)讀寫數據存儲以用戶為中心的一致性模型:保證一個客戶對數據存儲的訪問是一致的常見的一致性模型以數據為中心的一致性模型:假設并發(fā)進程可能并容錯:失效(失敗)模型失效類型描述崩潰性失效服務器停止。但在停止前一直正確工作遺漏性失效

接收遺漏

發(fā)送遺漏服務器不能響應到來的請求

服務器不能接收到來的消息

服務器不能發(fā)送消息定時性失效服務器的響應超出規(guī)定的時間間隔響應性失效

值失效

狀態(tài)變遷失效服務器的響應不正確

響應的值是錯誤的服務器偏離正確的控制流任意性失效服務器在任意的時刻產生任意的響應容錯:失效(失敗)模型失效類型描述崩潰性失效服務器停止。但在可靠的客戶服務器通信RPC失效5種失效情況客戶服務器1.定位失敗2.請求消息丟失3.服務器失敗5.客戶失敗4.應答消息丟失可靠的客戶服務器通信RPC失效客戶服務器1.定位失敗2.請求進程的容錯復制進程,用一個容錯的進程組來代替一個脆弱的進程需要多少復制?取決于失效類型故障系統的協定:在有限的步驟內,所有非故障進程達成某個一致意見如果通信是不可靠的,無法達成協定兩軍問題如果通信是可靠的,什么情況下可達成協定?拜占庭將軍問題進程的容錯復制進程,用一個容錯的進程組來代替一個脆弱的進程可靠的分組通信可靠多播:發(fā)送到一個進程組的消息被傳遞到該組的每個成員基本的可靠多播方法:假定所有的接收者已知而且假定不會失敗的簡單可靠多播方法反饋抑制技術虛擬同步可靠多播:發(fā)送方在多播期間崩潰,也保證可靠多播原子多播:提供了全序消息傳送的虛擬同步可靠多播??煽康姆纸M通信可靠多播:發(fā)送到一個進程組的消息被傳遞到該組的分布式提交分布式提交:具有原子性:要使一個操作被進程組中每一個進程都執(zhí)行或都不執(zhí)行。通常使用協調者兩階段提交NoYes向所有參與者發(fā)詢問CanCommit?可以提交?向所有參與者發(fā)立即提交請求DoCommit接受參與者的回答:GetDecision中止本次提交AbortCommit接受參與者的完成回答Havecommited/Haveaborted分布式提交分布式提交:具有原子性:要使一個操作被進程組中每一恢復處理目的:使系統從錯誤狀態(tài)到正確狀態(tài)類型:向后恢復向前恢復檢查點技術(checkpoint)分布式快照,多米諾效應消息日志技術(logging)基于發(fā)送者也可基于接收者寫日志恢復處理目的:使系統從錯誤狀態(tài)到正確狀態(tài)安全:基本概念一個安全的計算機系統,必須具有以下兩個屬性:機密性(Confidentiality):指計算機系統的一種屬性,系統憑借此屬性使得信息只向授權用戶公開。完整性(Integrity):指對系統資源的變更只能以授權的方式進行。不適當的變更應該是可以察覺的并可以恢復的。安全威脅:竊聽、中斷、篡改、偽造安全機制:加密、認證、授權、審計安全:基本概念一個安全的計算機系統,必須具有以下兩個屬性:核心基礎:加密對稱加密系統:使用相同的密鑰進行一個消息的加密和解密非對稱加密系統(也叫公鑰系統):加密和解密所使用的密鑰不同,但兩個密鑰一起構成唯一的一對:符號定義NotationDescriptionKA,BA和B共享的密鑰A的公鑰A的私鑰核心基礎:加密對稱加密系統:使用相同的密鑰進行一個消息的加密安全通道安全通道保護發(fā)送者和接收者之間的安全通信通信方必須正確正確:身份認證通信的數據保持機密性和完整性機密性:使用加密技術,常使用會話密鑰完整性:數字簽名安全通道安全通道保護發(fā)送者和接收者之間的安全通信身份認證身份認證數字簽名和消息摘要使用公鑰密碼對一個消息進行數字簽名數字簽名和消息摘要使用公鑰密碼對一個消息進行數字簽名Kerberos的身份認證和安全通道建立Kerberos的身份認證和安全通道建立訪問控制矩陣和權能在保護對象上ACL和權能的比較使用ACL使用capabilities.訪問控制矩陣和權能在保護對象上ACL和權能的比較使用密鑰的分發(fā):公鑰證書公鑰分發(fā)可通過使用公鑰證書實現。公鑰證書由一個公鑰與一個標識該公鑰所關聯的實體的字符串共同組成該公鑰和標識符共同由認證機構簽發(fā),因此此簽名也置于該證書上。密鑰的分發(fā):公鑰證書公鑰分發(fā)可通過使用公鑰證書實現。主要內容第一章緒論第二章分布式系統的基本原理第三章面向對象的分布計算環(huán)境第四章面向構件的分布計算環(huán)境第五章面向Web的分布計算環(huán)境第六章面向資源整合的分布計算環(huán)境第七章基于人工智能的分布計算環(huán)境主要內容第一章緒論面向對象的分布計算環(huán)境

分布式系統中的面向對象技術分布對封裝性、繼承性和對象引用的影響開放分布式處理ODPODP是為了解決什么問題而提出來的?主要內容:視點、透明性、功能CORBA技術OMA體系結構、IDL、ORB面向對象的遠程方法調用是如何實現的?面向對象的分布計算環(huán)境分布式系統中的面向對象技術OpenDistributedProcessingISO和ITU-T的開放分布處理模型(ODP-RM)為面向對象的分布式處理提供一個通用的體系結構框架,將開放式思想引入分布式處理,以解決異構系統間各種相關機制的一致性問題ODP-RM能夠協調和指導不同應用領域的ODP標準的開發(fā)。即它是一種框架,在其上可實現不同的”分布計算環(huán)境”。OpenDistributedProcessingISOODP的主要內容主要包含三部分:視點:為清晰地描述復雜的系統,把對ODP系統的說明細化為五個視點(即從五個不同的角度來觀察),以及用于表達這五個視點的語言。透明性:開放式分布處理系統應該提供的八個透明性。功能:定義開放式分布處理平臺應該具有的功能。

ODP的主要內容主要包含三部分:ODP的視點視點解決問題主要內容相關人員企業(yè)視點企業(yè)對信息系統的需求角色,方針,動作,活動企業(yè)管理者,用戶,資源提供者信息視點信息、信息流和信息處理信息對象,不變方案,靜態(tài)方案,動態(tài)方案信息分析員,系統分析員,信息工程師計算視點分布式應用的邏輯劃分

計算對象,計算接口,接口引用,操作,信號,流,聯編,聯編對象系統分析員,系統設計員工程視點支持應用的分布式基礎設施

基本工程對象,存根,聯編對象,協議對象,核心,簇,容器,節(jié)點,攔截器,支撐對象操作系統設計者,通信系統設計者,系統設計者技術視點技術的獲得和安裝,實現、一致性。技術解決方案系統集成人員,系統提供商ODP的視點視點解決問題主要內容相關人員企業(yè)視點企業(yè)對信息系ODP的分布透明性ODP的分布透明性訪問透明性、位置透明性、重置透明性、持久透明性、遷移透明性、復制透明性、故障透明性、事務透明性ODP的分布透明性ODP的分布透明性CORBACommonObjectRequestBrokerArchitecture:OMG組織制定的一個工業(yè)規(guī)范,是一個體系結構和一組規(guī)范定義了一系列API、通信協議、組件/服務信息模型,使得異質應用程序能夠互相操作,這些應用程序用不同的程序語言編寫,運行在不同的平臺上。目的:在分布式環(huán)境下實現應用的集成,使基于對象的軟件成員,在分布的、異構的環(huán)境下可重用、可移植、可互操作。方法:提供一個框架,如果符合這一框架,就可以在主要的硬件平臺和操作系統上建立一個異質的分布式應用。CORBACommonObjectRequestBroCORBA的OMA對象管理體系結構OMA:描述了OMG規(guī)范所遵循的概念化的基礎結構CORBA的OMA對象管理體系結構OMA:描述了OMG規(guī)范所CORBA的IDL僅定義接口,不定義實現分隔“對象作什麼(WHAT)”與“如何做(HOW)”O(jiān)RBCC++AdaIDLIDLIDLIDLIDLIDLClientSideObjectImplementationSideCOBOLCAdaC++SmalltalkJAVAIDLIDLIDLIDLIDLIDLORBCOBOLSmalltalkJAVACORBA的IDL僅定義接口,不定義實現ORBCC++AdaCORBA的ORB對象請求代理ORB(ObjectRequestBroker):定義異構環(huán)境下對象透明地發(fā)送請求和接收響應的基本機制。ORB為客戶隱藏:對象位置對象實現方式對象執(zhí)行狀態(tài)對象通信機制為什么在異構環(huán)境下能夠透明地發(fā)送請求和接收響應?CORBA的ORB對象請求代理ORB(ObjectRequ存儲允許ORB的定位和激活對象實現的信息,如Server支持的類、實例化對象、這些對象的ID等運行時信息。對象引用的生成、維護,方法調用、對象的激活與終止、對象定位等功能。BOA:BasicObjectAdapterPOA:PortableObjectAdapterDII在Server

溫馨提示

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

最新文檔

評論

0/150

提交評論