![中間件技術(shù)原理與應(yīng)用初學(xué)者必看課件_第1頁(yè)](http://file4.renrendoc.com/view/10525d9108f49459ed24c5f3fd2fe912/10525d9108f49459ed24c5f3fd2fe9121.gif)
![中間件技術(shù)原理與應(yīng)用初學(xué)者必看課件_第2頁(yè)](http://file4.renrendoc.com/view/10525d9108f49459ed24c5f3fd2fe912/10525d9108f49459ed24c5f3fd2fe9122.gif)
![中間件技術(shù)原理與應(yīng)用初學(xué)者必看課件_第3頁(yè)](http://file4.renrendoc.com/view/10525d9108f49459ed24c5f3fd2fe912/10525d9108f49459ed24c5f3fd2fe9123.gif)
![中間件技術(shù)原理與應(yīng)用初學(xué)者必看課件_第4頁(yè)](http://file4.renrendoc.com/view/10525d9108f49459ed24c5f3fd2fe912/10525d9108f49459ed24c5f3fd2fe9124.gif)
![中間件技術(shù)原理與應(yīng)用初學(xué)者必看課件_第5頁(yè)](http://file4.renrendoc.com/view/10525d9108f49459ed24c5f3fd2fe912/10525d9108f49459ed24c5f3fd2fe9125.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中間件技術(shù)原理與應(yīng)用劉 冰長(zhǎng)春工業(yè)大學(xué)liubingnet中間件技術(shù)原理與應(yīng)用劉 冰課程目標(biāo)構(gòu)造大型的分布式軟件系統(tǒng)時(shí)將遇到 什么樣的問(wèn)題解決這些問(wèn)題的原理與技術(shù):構(gòu)件技術(shù)與中間件技術(shù)相關(guān)的工業(yè)標(biāo)準(zhǔn)如 COM、CORBA、J2EE等課程目標(biāo)構(gòu)造大型的分布式軟件系統(tǒng)時(shí)將遇到 什么樣的問(wèn)題1、操作系統(tǒng)2、計(jì)算機(jī)網(wǎng)絡(luò)3、數(shù)據(jù)庫(kù)原理4、軟件工程5、Java/C相關(guān)課程1、操作系統(tǒng)相關(guān)課程開放系統(tǒng)互操作性中間件123遠(yuǎn)地過(guò)程調(diào)用及其增強(qiáng)分布式計(jì)算環(huán)境45第1章 中間件產(chǎn)生背景及分布式計(jì)算環(huán)境開放系統(tǒng)互操作性中間件123遠(yuǎn)地過(guò)程調(diào)用及其增強(qiáng)分布式計(jì)算環(huán)什么是分布式軟件軟件面臨的問(wèn)題軟件正變得無(wú)處不在,同時(shí)
2、軟件所面臨的挑戰(zhàn)也正在日益加劇 復(fù)雜度高 開發(fā)周期長(zhǎng) 可靠性保證難什么是分布式軟件軟件面臨的問(wèn)題什么是分布式軟件本課程關(guān)注分布式軟件系統(tǒng)的開發(fā)支撐隨著網(wǎng)絡(luò)與通信技術(shù)的發(fā)展,分布式軟件的應(yīng)用越來(lái)越廣泛,分布式軟件在計(jì)算機(jī)軟件應(yīng)用領(lǐng)域扮演者非常重要的角色。分布式軟件一般比集中式軟件規(guī)模大、復(fù)雜,是軟件開發(fā)復(fù)雜性的集中體現(xiàn)。什么是分布式軟件本課程關(guān)注分布式軟件系統(tǒng)的開發(fā)支撐什么是分布式軟件分布式軟件網(wǎng)絡(luò)環(huán)境:一群通過(guò)網(wǎng)絡(luò)互相連接的處理系統(tǒng),每個(gè)處理節(jié)點(diǎn)由處理機(jī)硬件、操作系統(tǒng)及基本通信軟件等組成。分布式軟件:運(yùn)行在網(wǎng)絡(luò)環(huán)境中的軟件系統(tǒng)。兩種典型的應(yīng)用途徑將分布式軟件系統(tǒng)看做直接反映了現(xiàn)實(shí)世界中的分布性
3、用于改進(jìn)某些應(yīng)用的運(yùn)行性能什么是分布式軟件分布式軟件計(jì)算模式的發(fā)展過(guò)程基于主機(jī)的系統(tǒng)(分時(shí)共享、資源共享)兩層Client/Server系統(tǒng)客戶端負(fù)擔(dān)仍然比較重仍然需要客戶端進(jìn)行較復(fù)雜的數(shù)據(jù)處理客戶端的可移植性不好處理復(fù)雜必然牽涉更多的移植性問(wèn)題每個(gè)客戶端上都要安裝數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序系統(tǒng)的可維護(hù)性不好客戶端包含過(guò)多的商業(yè)邏輯商業(yè)邏輯與人機(jī)交互界面交織在一起數(shù)據(jù)的安全性不好 1.1開放系統(tǒng)與互操作性概述計(jì)算模式的發(fā)展過(guò)程1.1開放系統(tǒng)與互操作性概述計(jì)算模式的發(fā)展過(guò)程三層(n層)體系架構(gòu)表示層 用戶層業(yè)務(wù)邏輯層應(yīng)用層數(shù)據(jù)層數(shù)據(jù)庫(kù)服務(wù)器 基于Web的三層(N層)體系結(jié)構(gòu)1.1開放系統(tǒng)與互操作性概述計(jì)算模
4、式的發(fā)展過(guò)程1.1開放系統(tǒng)與互操作性概述開放系統(tǒng)基本組成硬件 包括PC,工作站,大中型機(jī),各式各樣的 嵌入式設(shè)備,移動(dòng)設(shè)備;軟件 各類操作系統(tǒng)、應(yīng)用軟件;網(wǎng)絡(luò) 各類網(wǎng)絡(luò)結(jié)構(gòu)、網(wǎng)絡(luò)協(xié)議。開放系統(tǒng)面臨的問(wèn)題 遠(yuǎn)程性 并發(fā)行 無(wú)全局狀態(tài) 部分失敗 異步性 異質(zhì)性 自主性 聯(lián)合型 伸縮性 發(fā)展性 移動(dòng)性1.1續(xù)開放系統(tǒng)基本組成1.1續(xù)開放系統(tǒng)特點(diǎn)開放的:提供可移植性和協(xié)同工作;集成的:有助于對(duì)付異質(zhì)性;靈活的:有助于對(duì)付移動(dòng)性;模塊化的:靈活性的基礎(chǔ);可聯(lián)合的可管理的安全的透明的:支撐軟件和硬件的異質(zhì)性;滿足服務(wù)質(zhì)量需求1.1續(xù)開放系統(tǒng)特點(diǎn)1.1續(xù)開放系統(tǒng)必具特性可移植性(Portability)可互
5、操作性(Interoperability)可伸縮性(Scalability)易獲得性(Availability)1.1續(xù)開放系統(tǒng)必具特性1.1續(xù)開放系統(tǒng)構(gòu)造用輪廓勾劃;輪廓由系統(tǒng)管理 用戶界面 安全性 編程服務(wù) 互操作服務(wù) 通信服務(wù) 信息實(shí)體 七個(gè)成分組成;對(duì)輪廓的各成分標(biāo)準(zhǔn)化,即成開放系統(tǒng)。1.1續(xù)開放系統(tǒng)構(gòu)造1.1續(xù)開放系統(tǒng)開放程度表 1.1續(xù)開放系統(tǒng)開放程度表 1.1續(xù)互操作性本質(zhì):從異質(zhì)環(huán)境(異種體系結(jié)構(gòu)、異種操作系統(tǒng)、異種網(wǎng)絡(luò)等)中獲得資源的透明動(dòng)用能力。 面向計(jì)算資源的互操作性 面向信息資源的互操作性(如數(shù)據(jù)庫(kù))定義:在一個(gè)由異質(zhì)實(shí)體構(gòu)成的網(wǎng)絡(luò)環(huán)境中,當(dāng)應(yīng)用在網(wǎng)絡(luò)的結(jié)點(diǎn)上運(yùn)行時(shí),它
6、可以透明地動(dòng)用網(wǎng)中其他結(jié)點(diǎn)上的資源,并借助這些資源與本結(jié)點(diǎn)上的資源共同來(lái)完成某個(gè)或某組任務(wù)。1.1續(xù)互操作性1.1續(xù)互操作性定義:在一個(gè)由異質(zhì)實(shí)體構(gòu)成的網(wǎng)絡(luò)環(huán)境中,當(dāng)應(yīng)用在網(wǎng)絡(luò)的結(jié)點(diǎn)上運(yùn)行時(shí),它可以透明地動(dòng)用網(wǎng)中其他結(jié)點(diǎn)上的資源,并借助這些資源與本結(jié)點(diǎn)上的資源共同來(lái)完成某個(gè)或某組任務(wù)。本質(zhì):從異質(zhì)環(huán)境(異種體系結(jié)構(gòu)、異種操作系統(tǒng)、異種網(wǎng)絡(luò)等)中獲得資源的透明動(dòng)用能力。 面向計(jì)算資源的互操作性 面向信息資源的互操作性(如數(shù)據(jù)庫(kù))1.1續(xù)互操作性1.1續(xù)現(xiàn)代應(yīng)用系統(tǒng)的基本特征分布 任務(wù)已不只是在單機(jī)上運(yùn)行,而是由網(wǎng)絡(luò)中多臺(tái)計(jì)算機(jī)上的相關(guān)應(yīng)用共同協(xié)作完成,需考慮網(wǎng)絡(luò)傳輸、數(shù)據(jù)安全、數(shù)據(jù)一致性、同步等
7、諸多問(wèn)題;異構(gòu) 計(jì)算機(jī)硬件、操作系統(tǒng)、網(wǎng)絡(luò)協(xié)議、數(shù)據(jù)庫(kù)系統(tǒng)以及開發(fā)工具種類繁多,需考慮數(shù)據(jù)表示、調(diào)用接口、處理方式等諸多問(wèn)題;動(dòng)態(tài)協(xié)作 參與協(xié)作的應(yīng)用允許位置透明性、遷移透明性、負(fù)載平衡性等需求。1.2 中間件概述現(xiàn)代應(yīng)用系統(tǒng)的基本特征1.2 中間件概述1.2續(xù)應(yīng)用1應(yīng)用2應(yīng)用3服務(wù)器1服務(wù)器2服務(wù)器31.2續(xù)應(yīng)用1應(yīng)用2應(yīng)用3服務(wù)器1服務(wù)器2服務(wù)器31.2續(xù)應(yīng)用1應(yīng)用2應(yīng)用3服務(wù)器1服務(wù)器2服務(wù)器3中間件1.2續(xù)應(yīng)用1應(yīng)用2應(yīng)用3服務(wù)器1服務(wù)器2服務(wù)器3中間件應(yīng)用軟件中間件網(wǎng)絡(luò)軟件操作系統(tǒng)應(yīng)用軟件中間件網(wǎng)絡(luò)軟件操作系統(tǒng)可協(xié)同工作利用中間件進(jìn)行協(xié)同工作的系統(tǒng)1.2續(xù)應(yīng)用軟件中間件網(wǎng)絡(luò)軟件操作系
8、統(tǒng)應(yīng)用軟件中間件網(wǎng)絡(luò)軟件操作系統(tǒng)中間件定義中間件(Middleware)是一種軟件,處于系統(tǒng)軟件(操作系統(tǒng)和網(wǎng)絡(luò)軟件)與應(yīng)用軟件之間,它能使處于應(yīng)用層中的各應(yīng)用成分之間實(shí)現(xiàn)跨網(wǎng)絡(luò)的協(xié)同工作(也就是互操作),這時(shí)允許各應(yīng)用軟件之下所涉及的“系統(tǒng)結(jié)構(gòu)、操作系統(tǒng)、通信協(xié)議、數(shù)據(jù)庫(kù)和其它應(yīng)用服務(wù)”各不相同。1.2 續(xù)中間件定義1.2 續(xù)應(yīng)用軟件中間件網(wǎng)絡(luò)協(xié)議操作系統(tǒng)硬件平臺(tái)應(yīng)用軟件中間件網(wǎng)絡(luò)協(xié)議操作系統(tǒng)硬件平臺(tái)DBMS兩者內(nèi)含有進(jìn)行協(xié)同工作的應(yīng)用成分中間件定義1.2 續(xù)應(yīng)用軟件中間件網(wǎng)絡(luò)協(xié)議操作系統(tǒng)硬件平臺(tái)應(yīng)用軟件中間件網(wǎng)絡(luò)協(xié)議中間件組成1執(zhí)行環(huán)境(Execution Environment)軟件 如
9、果一個(gè)網(wǎng)絡(luò)的各個(gè)節(jié)點(diǎn)上安裝了EE軟件,各節(jié)點(diǎn)上的應(yīng)用軟件之間就可以實(shí)現(xiàn)相互合作。EE軟件使各節(jié)點(diǎn)的下層設(shè)備對(duì)應(yīng)用軟件透明化了,EE軟件是中間件中的主體部分。2應(yīng)用開發(fā)(Application Development)工具AD工具用來(lái)幫助開發(fā)內(nèi)含“透明動(dòng)用對(duì)方”成分的應(yīng)用軟件,或改造原有的無(wú)透明動(dòng)用能力的應(yīng)用軟件。AD工具是中間件中的必備部分。1.2 續(xù)中間件組成1.2 續(xù)中間件的層次結(jié)構(gòu)1.2續(xù)中間件的層次結(jié)構(gòu)1.2續(xù)中間件基本框架第四層應(yīng)用接口(API)層中間件服務(wù)層(通信,控制,計(jì)算,管理,輸出,信息等)應(yīng)用平臺(tái)層(Unix、NetWare、NT、VAX、OPENVMS等)傳輸協(xié)議層(TC
10、P/IP、IPX/SPX、NetBIOS、OSI等)第三層第二層第一層中間件的基本功能框架結(jié)構(gòu)1.2續(xù)中間件基本框架第四層應(yīng)用接口(API)層中間件服務(wù)層應(yīng)用平臺(tái)基于中間件的軟件系統(tǒng)基本模型1.2續(xù)基于中間件的軟件系統(tǒng)基本模型1.2續(xù)中間件工作原理中間件服務(wù)器1服務(wù)器2服務(wù)器n客戶機(jī)1客戶機(jī)2客戶機(jī)n服務(wù)器端客戶端同/異構(gòu)環(huán)境1.2 續(xù)中間件工作原理中間件服務(wù)器1服務(wù)器2服務(wù)器n客戶機(jī)1客戶機(jī)2中間件的基本分類事務(wù)處理中間件(交易中間件,TPM)原子性 A 一致性 C隔離性 I 耐久性 D消息中間件(MOM)消息隊(duì)列發(fā)布-預(yù)定分布式中間件1.2續(xù)中間件的基本分類1.2續(xù)中間件的發(fā)展情況1.2續(xù)
11、中間件的發(fā)展情況1.2續(xù)中間件的主要廠商第一梯隊(duì)Oracle(BEA)、IBM、東方通科技,占70%以上份額;第二梯隊(duì)Sun、中軟、中創(chuàng)、微軟等;第三梯隊(duì)國(guó)內(nèi)若干中小軟件企業(yè)和系統(tǒng)集成企業(yè)。1.2 續(xù)中間件的主要廠商1.2 續(xù)中間件的作用它提供了通道的功能,可保證應(yīng)用系統(tǒng)數(shù)據(jù)的可靠傳輸;它起著橋梁的作用,達(dá)成異構(gòu)應(yīng)用資源之間的互聯(lián)互通;它是分布式應(yīng)用的集成開發(fā)框架,促成企業(yè)分布式應(yīng)用的有機(jī)集成;作為平臺(tái),它可有效實(shí)現(xiàn)分布應(yīng)用的分階段順利部署;它起著過(guò)濾網(wǎng)的作用,可有力保護(hù)關(guān)鍵信息的安全。1.2 續(xù)中間件的作用1.2 續(xù)中間件的優(yōu)越性:1.企業(yè)應(yīng)用方面縮短應(yīng)用開發(fā)周期減少項(xiàng)目開發(fā)風(fēng)險(xiǎn)應(yīng)用程序質(zhì)量
12、可維護(hù)性增加產(chǎn)品吸引力2.應(yīng)用程序方面透明地同其他應(yīng)用程序交互與運(yùn)行平臺(tái)提供的網(wǎng)絡(luò)通信服務(wù)無(wú)關(guān)具有良好的可靠性和可用性具有良好的可擴(kuò)展性1.2 續(xù)中間件的優(yōu)越性:2.應(yīng)用程序方面1.2 續(xù)中間件發(fā)展面臨的問(wèn)題不同廠商的實(shí)現(xiàn)很難互操作只提供了一部分平臺(tái)的實(shí)現(xiàn)應(yīng)用開發(fā)者要面臨設(shè)計(jì)選擇過(guò)分追求中間件功能的全面性過(guò)分強(qiáng)調(diào)選擇國(guó)外產(chǎn)品不能準(zhǔn)確認(rèn)識(shí)中間件的作用1.2續(xù)中間件發(fā)展面臨的問(wèn)題1.2續(xù)中間件技術(shù)發(fā)展趨勢(shì)中間件的發(fā)展需要規(guī)范化應(yīng)用需求導(dǎo)致技術(shù)格局多樣化構(gòu)件化和松散耦合底層的中間件持續(xù)走穩(wěn)高層的中間件成為市場(chǎng)新寵新技術(shù)與產(chǎn)品的推出速度放緩實(shí)用化是重要的發(fā)展趨勢(shì)1.2 續(xù)中間件技術(shù)發(fā)展趨勢(shì)1.2 續(xù)R
13、PC背景在傳統(tǒng)的編程概念中,過(guò)程是只能局限在本地運(yùn)行的一段代碼,主程序和過(guò)程之間的運(yùn)行關(guān)系是本地調(diào)用關(guān)系本地過(guò)程調(diào)用LPC。LPC模式無(wú)法充分利用網(wǎng)絡(luò)上其他主機(jī)的資源,也無(wú)法提高代碼在實(shí)體間的共享程度,使得主機(jī)資源大量浪費(fèi)。RPC是對(duì)LPC的擴(kuò)展。通過(guò)這種調(diào)用機(jī)制,程序員編寫客戶方應(yīng)用時(shí),可根據(jù)需要透明地調(diào)用位于遠(yuǎn)端服務(wù)器上的過(guò)程。1.3遠(yuǎn)程過(guò)程調(diào)用及其增強(qiáng)RPC背景1.3遠(yuǎn)程過(guò)程調(diào)用及其增強(qiáng)main().調(diào)用A.退出A().調(diào)用B.退出B().退出主程序過(guò)程A代碼過(guò)程B代碼機(jī)器1機(jī)器2機(jī)器3RPC調(diào)用模型主程序子程序子程序1.3 續(xù)main()A()B()主程序過(guò)程A代碼過(guò)程B代碼機(jī)器遠(yuǎn)程過(guò)
14、程調(diào)用RPC概念RPC是從一臺(tái)機(jī)器或一個(gè)進(jìn)程調(diào)用另一臺(tái)機(jī)器或另一個(gè)進(jìn)程的服務(wù)或方法。遠(yuǎn)程過(guò)程調(diào)用是創(chuàng)建分布式應(yīng)用的一種方法,來(lái)源于Unix操作系統(tǒng)的處理思想,被普遍認(rèn)為是創(chuàng)建分布式應(yīng)用的有效方法。從程序員的角度,RPC采用常規(guī)的編程模式:程序代碼調(diào)用遠(yuǎn)端過(guò)程并將結(jié)果返回。當(dāng)使用RPC時(shí),只需編寫很少的網(wǎng)絡(luò)程序代碼,絕大部分代碼由IDL(Interface Define Language)生成。1.3 續(xù)遠(yuǎn)程過(guò)程調(diào)用RPC概念1.3 續(xù)IDL編譯器結(jié)構(gòu)IDL規(guī)范IDL編譯器頭文件客戶存根頭文件對(duì)象實(shí)現(xiàn)框架圖2-4 IDL編譯器結(jié)構(gòu)1.3 續(xù)IDL編譯器結(jié)構(gòu)IDL規(guī)范IDL編譯器頭文件客戶存根頭文
15、件對(duì)遠(yuǎn)程過(guò)程調(diào)用中間件工作機(jī)理用中間件中的IDL對(duì)調(diào)用順序加以描述;利用IDL編譯器對(duì)這種定義和描述進(jìn)行編譯,從而生成支持客戶機(jī)和服務(wù)器進(jìn)行通信的管道;在服務(wù)器端,被調(diào)用的遠(yuǎn)端過(guò)程需單獨(dú)編寫,并被置入服務(wù)器端框架,同時(shí)要在遠(yuǎn)程過(guò)程調(diào)用中間件中進(jìn)行注冊(cè),以備調(diào)用。啟動(dòng)本地客戶端存根存根捆綁遠(yuǎn)端過(guò)程名和參數(shù)利用網(wǎng)絡(luò)傳輸?shù)椒?wù)器端框架,從而實(shí)現(xiàn)數(shù)據(jù)格式的轉(zhuǎn)換和參數(shù)的傳遞采用調(diào)用/返回模式具體地完成遠(yuǎn)端過(guò)程調(diào)用。1.3 續(xù)遠(yuǎn)程過(guò)程調(diào)用中間件工作機(jī)理1.3 續(xù)RPC工作流程客戶運(yùn)行客戶繼續(xù)執(zhí)行服務(wù)調(diào)用過(guò)程調(diào)用服務(wù)過(guò)程執(zhí)行過(guò)程返回請(qǐng)求返回RPC調(diào)用RPC返回Network圖2-5 RPC工作流程RPC一般
16、采用調(diào)用/返回模式,多用于應(yīng)用程序之間的通信,采用同步方式。RPC程序之間的同步通信一般采用Request-Wait-Reply方式,因此RPC更適應(yīng)小型簡(jiǎn)單而不需要采用異步通信方式的應(yīng)用。1.3 續(xù)RPC工作流程客戶運(yùn)行客戶繼續(xù)執(zhí)行服務(wù)調(diào)用過(guò)程調(diào)用服務(wù)過(guò)過(guò)程ClientSend(remote call pi()(發(fā)送“請(qǐng)求服務(wù)”信息)Receive(ans)接收回復(fù)信息server接收調(diào)用信息;抽取參數(shù)并分析;調(diào)用所指的過(guò)程;執(zhí)行遠(yuǎn)程過(guò)程返回執(zhí)行結(jié)果Send(ans)發(fā)送回復(fù)信息等待回復(fù)請(qǐng)求服務(wù)等待調(diào)用繼續(xù)返回調(diào)用結(jié)果RPC的通信模型1.3 續(xù)ClientSend(remote call p
17、i()R3 call work returnServer ProcessOP2 Server-stub OP3RPC Routinereceive transmit45678Local return Local callClient ProcessOP4 Client-stub OP1waitRPC Routinereceive transmit12910RPC執(zhí)行過(guò)程1.3 續(xù)3 call work retu通信協(xié)議支持兩種傳輸協(xié)議:TCP、UDPTCP:連接、可靠、低效。保證要么把調(diào)用傳遞到遠(yuǎn)程過(guò)程且接受應(yīng)答,要么報(bào)告通信無(wú)法進(jìn)行。UDP:無(wú)連接、不可靠、高效。使用UDP的遠(yuǎn)程過(guò)程調(diào)用也許
18、會(huì)丟失或重復(fù)。1.3 續(xù)通信協(xié)議1.3 續(xù)RPC的語(yǔ)義Last-of-many:被調(diào)用的過(guò)程可能執(zhí)行若干次,但規(guī)定其最后一次執(zhí)行的結(jié)果作為返回結(jié)果。At-most-once:若調(diào)用者收到了回復(fù)消息,則稱被調(diào)用的過(guò)程正確地完成了它的一次(僅僅一次)執(zhí)行。At-least-once:遠(yuǎn)程調(diào)用過(guò)程至少執(zhí)行一次,回復(fù)消息可能返回一次或多次。Exactly-once:若服務(wù)器正常,則遠(yuǎn)程過(guò)程恰好執(zhí)行一次,并返回一個(gè)調(diào)用結(jié)果。1.3 續(xù)RPC的語(yǔ)義1.3 續(xù)遠(yuǎn)程過(guò)程調(diào)用的特點(diǎn)客戶/服務(wù)器模式客戶端的應(yīng)用調(diào)用一個(gè)位于遠(yuǎn)端服務(wù)器平臺(tái)的進(jìn)程或服務(wù),RPC實(shí)際上是通過(guò)C/S方式實(shí)現(xiàn)的。數(shù)據(jù)封裝性遠(yuǎn)端過(guò)程調(diào)用負(fù)責(zé)捆
19、綁參數(shù),實(shí)現(xiàn)不同平臺(tái)之間參數(shù)的傳遞,發(fā)送參數(shù)到遠(yuǎn)端過(guò)程。同步性當(dāng)客戶機(jī)發(fā)出請(qǐng)求時(shí),服務(wù)器進(jìn)程處于運(yùn)行狀態(tài)。復(fù)雜性遠(yuǎn)程調(diào)用的實(shí)現(xiàn)環(huán)境可能要用系統(tǒng)級(jí)的任務(wù)來(lái)創(chuàng)建,但一旦完成,對(duì)程序員就是透明的了。1.3 續(xù)遠(yuǎn)程過(guò)程調(diào)用的特點(diǎn)1.3 續(xù)遠(yuǎn)程過(guò)程調(diào)用的特點(diǎn)缺點(diǎn):需要進(jìn)行系統(tǒng)級(jí)的配置; RPC 并不支持對(duì)象。 CORBA的IIOP MTS的DCOM Java的 sockets應(yīng)用級(jí)協(xié)議的編碼交換 EJB?RMI (Java Remote Method Protocol)優(yōu)點(diǎn):方便地實(shí)現(xiàn)不同平臺(tái)之間的數(shù)據(jù)轉(zhuǎn)換。 XDR(eXternal Data Representation) 1.3 續(xù)遠(yuǎn)程過(guò)程調(diào)用的特
20、點(diǎn)1.3 續(xù)RMI環(huán)境RMI(遠(yuǎn)程方法激活):在分布式程序中,其遠(yuǎn)程對(duì)象的方法能夠被運(yùn)行在不同主機(jī)上的其他Java虛擬機(jī)的方法調(diào)用。相對(duì)于過(guò)程調(diào)用級(jí)的RPC,RMI可以實(shí)現(xiàn)編程級(jí)對(duì)象之間的方法調(diào)用。本地與遠(yuǎn)程方法調(diào)用對(duì)象應(yīng)用程序本地調(diào)用機(jī)器A對(duì)象對(duì)象對(duì)象機(jī)器B網(wǎng)絡(luò)遠(yuǎn)程調(diào)用1.3 續(xù)RMI環(huán)境本地與遠(yuǎn)程方法調(diào)用對(duì)象應(yīng)用程序本地調(diào)用機(jī)器A對(duì)象對(duì)RMI體系結(jié)構(gòu)遠(yuǎn)程引用層傳輸層Java Virtual MachineClientStub遠(yuǎn)程引用層傳輸層Java Virtual MachineRemote ObjectSkeletonTCP1.3 續(xù)RMI體系結(jié)構(gòu)遠(yuǎn)程引用層傳輸層Java Virtual MaRMI系統(tǒng)的目標(biāo)支持對(duì)存在于不同Java虛擬機(jī)上對(duì)象的無(wú)縫的遠(yuǎn)程調(diào)用。支持服務(wù)器對(duì)客戶的回調(diào)。把分布式對(duì)象模型自然地集成到Java語(yǔ)言里。把分布式對(duì)象模型和本地Java對(duì)象模型間的不同表面化。使編寫可靠的分布式應(yīng)用程序簡(jiǎn)單化。保留Java運(yùn)行時(shí)環(huán)境提供的安全性。1.3 續(xù)RMI系統(tǒng)的目標(biāo)1.3 續(xù)RMI的體系結(jié)構(gòu)RMI體系結(jié)構(gòu)有三層組成樁(也成為存根)/框架層(stub/skeleton)遠(yuǎn)程引用層(Remote Reference)傳輸層(T
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 供排水合同范本
- 別墅出租居間合同范本
- 養(yǎng)殖山羊合作合同范本
- 三間住房合同范本
- 買礦山合同范本
- 判決終止服務(wù)合同范本
- 2025年度國(guó)際貨物鐵路運(yùn)輸與全面保險(xiǎn)服務(wù)合同
- 三人合伙開店分紅合同范本
- 勞動(dòng)合同個(gè)人申請(qǐng)書
- 會(huì)務(wù)會(huì)展合同范例
- 2025年初中語(yǔ)文:春晚觀后感三篇
- 《教育強(qiáng)國(guó)建設(shè)規(guī)劃綱要(2024-2035年)》解讀講座
- 預(yù)算績(jī)效評(píng)價(jià)管理機(jī)構(gòu)入圍投標(biāo)文件(技術(shù)方案)
- 耳鼻咽喉科臨床診療指南
- 第二部分-3 植物纖維化學(xué)部分-纖維素
- 民法原理與實(shí)務(wù)課程教學(xué)大綱
- 2019北師大版高中英語(yǔ)選擇性必修四單詞表
- 園藝產(chǎn)品的品質(zhì)講義
- 鋼筋混凝土框架結(jié)構(gòu)工程監(jiān)理的質(zhì)量控制
- 桃花節(jié)活動(dòng)方案
- 社區(qū)醫(yī)院建設(shè)標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論