国产在线中文字幕亚洲,一区视频国产精品观看,欧美日韩国产高清片,久久久久久AV无码免费网站,亚洲无码一二三四五区,日韩无码www.,sese444

您好,歡迎來(lái)到維�(kù)電子市場(chǎng)�(wǎng) 登錄 | 免費(fèi)注冊(cè)

中間�
閱讀�17365�(shí)間:2011-06-27 11:26:12

  中間��(MIDDLEWARE)是提供系�(tǒng)軟件和應(yīng)用軟件之間連接的軟件,以便于軟件各部件之間的溝�,特別是�(yīng)用軟件對(duì)于系�(tǒng)軟件的集中的邏輯,在�(xiàn)代信息技�(shù)�(yīng)用框架如Web服務(wù)、面向服�(wù)的體系結(jié)�(gòu)等中�(yīng)用比較廣�。如�(shù)�(jù)�(kù)、Apache的Tomcat,IBM公司的WebSphere,BEA公司的WebLogic�(yīng)�服務(wù)�以及Kingdee公司的Apusic等都屬于中間��

概述

  中間件(Middleware)是處于操作系統(tǒng)和應(yīng)用程序之間的軟件,也有人�(rèn)為它�(yīng)該屬于操作系�(tǒng)中的一部分。人�?cè)谑褂弥虚g件時(shí),往往是一組中間件集成在一�,構(gòu)成一�(gè)平臺(tái)(包括開發(fā)平臺(tái)和運(yùn)行平�(tái)),但在這組中間件中必需要有一�(gè)通信中間�,即中間�=平臺(tái)+通信,這�(gè)定義也限定了只有用于分布式系�(tǒng)中才能稱為中間件,同�(shí)還可以把它與支撐軟件和實(shí)用軟件區(qū)分開�(lái)

  �(yán)格來(lái)�,中間件技�(shù)已經(jīng)不局限于�(yīng)用服�(wù)�、數(shù)�(jù)�(kù)服務(wù)�。圍繞中間件,Apache組織、IBM、Oracle(BEA�、微軟各自發(fā)展出了較為完整的軟件�(chǎn)品體系�(Microsoft Servers是微軟公司的服務(wù)器產(chǎn)品介�).中間件技�(shù)�(chuàng)建在�(duì)�(yīng)用軟件部分常用功能的抽象�,將常用且重要的過程�(diào)�、分布式組件、消息隊(duì)�、事�(wù)、安�、連結(jié)�、商�(yè)流程、網(wǎng)�(luò)并發(fā)、HTTP服務(wù)�、Web Service等功能集于一身或者分別在不同品牌的不同產(chǎn)品中分別完成。一般認(rèn)為在商業(yè)中間件及信息化市�(chǎng)主要存在微軟陣營(yíng)、Java陣營(yíng)、開源陣�(yíng)。陣�(yíng)的區(qū)分主要體�(xiàn)在對(duì)下層操作系統(tǒng)的選擇以及對(duì)上層組件�(biāo)�(zhǔn)的制�。目前主流商�(yè)操作系統(tǒng)主要�(lái)自Unix、蘋果公司和Linux的系�(tǒng)以及微軟視窗系列。微軟陣�(yíng)的主要技�(shù)提供商來(lái)自微軟和�(jī)器商�(yè)伙伴,Java陣營(yíng)則來(lái)自IBM、Sun、Oracle、BEA(已被Oracle收購(gòu)�、金蝶(Kingdee Apusic)及其合作伙�,開源陣營(yíng)則主要來(lái)自諸如Apache,SourceForge等組織的共享代碼�

  中間件技�(shù)的蓬勃發(fā)展離不開�(biāo)�(zhǔn)化,�(biāo)�(zhǔn)的創(chuàng)建有助于融合不同陣營(yíng)的系�(tǒng).越來(lái)越多的標(biāo)�(zhǔn)被三大陣�(yíng)共同接受并推廣發(fā)展� 中間件技�(shù)的發(fā)展方向朝著更廣闊范圍的標(biāo)�(zhǔn)�,功能的層次化,�(chǎn)品的系列化方面發(fā)��

特點(diǎn)

  也許很難給中間件一�(gè)�(yán)格的定義,但中間件應(yīng)具有如下的一些特�(diǎn)�

  滿足大量�(yīng)用的需�

  �(yùn)行于多種硬件和OS平臺(tái)

  支持分布�(jì)�,提供跨�(wǎng)�(luò)、硬件和OS平臺(tái)的透明性的�(yīng)用或服務(wù)的交�

  支持�(biāo)�(zhǔn)的協(xié)�

  支持�(biāo)�(zhǔn)的接�

  由于�(biāo)�(zhǔn)接口�(duì)于可移植性和�(biāo)�(zhǔn)�(xié)議對(duì)于互操作性的重要�,中間件已成為許多標(biāo)�(zhǔn)化工作的主要部分。對(duì)于應(yīng)用軟件開�(fā),中間件�(yuǎn)比操作系�(tǒng)和網(wǎng)�(luò)服務(wù)更為重要,中間件提供的程序接口定義了一�(gè)相對(duì)�(wěn)定的高層�(yīng)用環(huán)�,不管底層的�(jì)算機(jī)硬件和系�(tǒng)軟件怎樣更新?lián)Q代,只要將中間件升級(jí)更新,并保持中間件對(duì)外的接口定義不變,應(yīng)用軟件幾乎不需任何修改,從而保�(hù)了企�(yè)在應(yīng)用軟件開�(fā)和維�(hù)中的重大投資�

主要分類

  中間件所包括的范圍十分廣�,針�(duì)不同的應(yīng)用需求涌�(xiàn)出多種各具特色的中間件產(chǎn)品。但至今中間件還沒有一�(gè)比較精確的定�,因此,在不同的角度或不同的層次�,對(duì)中間件的分類也會(huì)有所不同。由于中間件需要屏蔽分布環(huán)境中異構(gòu)的操作系�(tǒng)和網(wǎng)�(luò)�(xié)�,它必須能夠提供分布�(huán)境下的通訊服務(wù),我們將這種通訊服務(wù)稱之為平�(tái)?;谀康暮�?shí)�(xiàn)�(jī)制的不同,我們將平臺(tái)分為以下主要幾類�

  �(yuǎn)程過程調(diào)用(Remote Procedure Call�

  面向消息的中間件(Message-Oriented Middleware�

  �(duì)象請(qǐng)求代理(Object Request Brokers�

  它們可向上提供不同形式的通訊服務(wù),包括同步、排�(duì)、訂閱發(fā)布、廣播等�,在這些基本的通訊平臺(tái)之上,可�(gòu)筑各種框架,為應(yīng)用程序提供不同領(lǐng)域內(nèi)的服�(wù),如事務(wù)處理�(jiān)控器、分布數(shù)�(jù)訪問、對(duì)象事�(wù)管理器OTM�。平�(tái)為上層應(yīng)用屏蔽了異構(gòu)平臺(tái)的差�,而其上的框架又定義了相應(yīng)�(lǐng)域內(nèi)的應(yīng)用的系統(tǒng)�(jié)�(gòu)、標(biāo)�(zhǔn)的服�(wù)組件�,用戶只需告訴框架所�(guān)心的事件,然后提供處理這些事件的代�。當(dāng)事件�(fā)生時(shí),框架則�(huì)�(diào)用用戶的代碼。用戶代碼不用調(diào)用框�,用戶程序也不必�(guān)心框架結(jié)�(gòu)、執(zhí)行流�、對(duì)系統(tǒng)�(jí)API的調(diào)用等,所有這些由框架負(fù)�(zé)完成。因�,基于中間件開發(fā)的應(yīng)用具有良好的可擴(kuò)充�、易管理性、高可用性和可移植��

常見類型

  1、遠(yuǎn)程過程調(diào)�

  �(yuǎn)程過程調(diào)用是一種廣泛使用的分布式應(yīng)用程序處理方�。一�(gè)�(yīng)用程序使用RPC�(lái)“遠(yuǎn)程”執(zhí)行一�(gè)位于不同地址空間里的過程,并且從效果上看和執(zhí)行本地調(diào)用相�。事�(shí)�,一�(gè)RPC�(yīng)用分為兩�(gè)部分:server和client。server提供一�(gè)或多�(gè)�(yuǎn)程過�;client向server�(fā)出遠(yuǎn)程調(diào)�。server和client可以位于同一�(tái)�(jì)算機(jī),也可以位于不同的計(jì)算機(jī),甚至運(yùn)行在不同的操作系�(tǒng)之上。它們通過�(wǎng)�(luò)�(jìn)行通訊。相�(yīng)的stub和運(yùn)行支持提供數(shù)�(jù)�(zhuǎn)換和通訊服務(wù),從而屏蔽不同的操作系統(tǒng)和網(wǎng)�(luò)�(xié)�。在這里RPC通訊是同步的。采用線程可以�(jìn)行異步調(diào)��

  在RPC模型�,client和server只要具備了相�(yīng)的RPC接口,并且具有RPC�(yùn)行支�,就可以完成相應(yīng)的互操作,而不必限制于特定的server。因�,RPC為client/server分布式計(jì)算提供了有力的支持。同�(shí),遠(yuǎn)程過程調(diào)用RPC所提供的是基于過程的服�(wù)訪問,client與server�(jìn)行直接連接,沒有中間機(jī)�(gòu)�(lái)處理�(qǐng)�,因此也具有一定的局限性。比�,RPC通常需要一些網(wǎng)�(luò)�(xì)節(jié)以定位server;在client�(fā)出請(qǐng)求的同時(shí),要求server必須是活�(dòng)的等��

  2、面向消息的中間�

  MOM指的是利用高效可靠的消息傳遞�(jī)制�(jìn)行平�(tái)�(wú)�(guān)的數(shù)�(jù)交流,并基于�(shù)�(jù)通信�(lái)�(jìn)行分布式系統(tǒng)的集�。通過提供消息傳遞和消息排�(duì)模型,它可在分布�(huán)境下�(kuò)展�(jìn)程間的通信,并支持多通訊�(xié)議、語(yǔ)言、應(yīng)用程�、硬件和軟件平臺(tái)。目前流行的MOM中間件產(chǎn)品有IBM的MQSeries、BEA的MessageQ�。消息傳遞和排隊(duì)技�(shù)有以下三�(gè)主要特點(diǎn)�

  通訊程序可在不同的時(shí)間運(yùn)�:程序不在�(wǎng)�(luò)上直接相互通話,而是間接地將消息放入消息�(duì)�,因?yàn)槌绦蜷g沒有直接的聯(lián)�。所以它們不必同�(shí)�(yùn)�。消息放入適�(dāng)?shù)�?duì)列時(shí),目�(biāo)程序甚至根本不需要正在運(yùn)�;即使目�(biāo)程序在運(yùn)�,也不意味著要立即處理該消息�

  �(duì)�(yīng)用程序的�(jié)�(gòu)沒有約束:在復(fù)雜的�(yīng)用場(chǎng)合中,通訊程序之間不僅可以是一�(duì)一的關(guān)系,還可以�(jìn)行一�(duì)多和多對(duì)一方式,甚至是上述多種方式的組�。多種通訊方式的構(gòu)造并沒有增加�(yīng)用程序的�(fù)雜��

  程序與網(wǎng)�(luò)�(fù)雜性相隔離: 程序?qū)⑾⒎湃胂�?duì)列或從消息隊(duì)列中取出消息�(lái)�(jìn)行通訊,與此關(guān)�(lián)的全部活�(dòng),比如維�(hù)消息�(duì)�、維�(hù)程序和隊(duì)列之間的�(guān)�、處理網(wǎng)�(luò)的重新啟�(dòng)和在�(wǎng)�(luò)中移�(dòng)消息等是MOM的任�(wù),程序不直接與其它程序通話,并且它們不涉及�(wǎng)�(luò)通訊的復(fù)雜��

  3、對(duì)象請(qǐng)求代�

  隨著�(duì)象技�(shù)與分布式�(jì)算技�(shù)的發(fā)�,兩者相互結(jié)合形成了分布�(duì)象計(jì)�,并�(fā)展為�(dāng)今軟件技�(shù)的主流方��1990年底,對(duì)象管理集�(tuán)OMG首次推出�(duì)象管理結(jié)�(gòu)OMA(Object Management Architecture),對(duì)象請(qǐng)求代理(Object Request Broker)是這�(gè)模型的核心組件。它的作用在于提供一�(gè)通信框架,透明地在異構(gòu)的分布計(jì)算環(huán)境中傳遞�(duì)象請(qǐng)�。CORBA�(guī)范包括了ORB的所有標(biāo)�(zhǔn)接口�1991年推出的CORBA 1.1 定義了接口描述語(yǔ)言O(shè)MG IDL和支持Client/Server�(duì)象在具體的ORB上�(jìn)行互操作的API。CORBA 2.0 �(guī)范描述的是不同廠商提供的ORB之間的互操作�

  �(duì)象請(qǐng)求代�(ORB)是對(duì)象總�,它在CORBA�(guī)范中處于核心地位,定義異�(gòu)�(huán)境下�(duì)象透明地發(fā)送請(qǐng)求和接收響應(yīng)的基本機(jī)制,是建立對(duì)象之間client/server�(guān)系的中間�。ORB使得�(duì)象可以透明地向其他�(duì)象發(fā)出請(qǐng)求或接受其他�(duì)象的響應(yīng),這些�(duì)象可以位于本地也可以位于�(yuǎn)程機(jī)器。ORB攔截�(qǐng)求調(diào)�,并�(fù)�(zé)找到可以�(shí)�(xiàn)�(qǐng)求的�(duì)象、傳送參�(shù)、調(diào)用相�(yīng)的方�、返回結(jié)果等。client�(duì)象并不知道同server�(duì)象通訊、激活或存儲(chǔ)server�(duì)象的�(jī)�,也不必知道server�(duì)象位于何�、它是用何種�(yǔ)言�(shí)�(xiàn)的、使用什么操作系�(tǒng)或其他不屬于�(duì)象接口的系統(tǒng)成分�

  值得指出的是client和server角色只是用來(lái)�(xié)�(diào)�(duì)象之間的相互作用,根�(jù)相應(yīng)的場(chǎng)�,ORB上的�(duì)象可以是client,也可以是server,甚至兼有兩�。當(dāng)�(duì)象發(fā)出一�(gè)�(qǐng)求時(shí),它是處于client角色;當(dāng)它在接收�(qǐng)求時(shí),它就處于server角色。大部分的對(duì)象都是既扮演client角色又扮演server角色。另外由于ORB�(fù)�(zé)�(duì)象請(qǐng)求的傳送和server的管�,client和server之間并不直接連接,因此,與RPC所支持的單純的Client/Server�(jié)�(gòu)相比,ORB可以支持更加�(fù)雜的�(jié)�(gòu)�

  4、事�(wù)處理�(jiān)�

  事務(wù)處理�(jiān)控(Transaction processing monitors)最早出�(xiàn)在大型機(jī)上,為其提供支持大規(guī)模事�(wù)處理的可靠運(yùn)行環(huán)�。隨著分布計(jì)算技�(shù)的發(fā)展,分布�(yīng)用系�(tǒng)�(duì)大規(guī)模的事務(wù)處理提出了需�,比如商�(yè)活動(dòng)中大量的�(guān)鍵事�(wù)處理。事�(wù)處理�(jiān)控界于client和server之間,�(jìn)行事�(wù)管理與協(xié)�(diào)、負(fù)載平�、失敗恢�(fù)等,以提高系�(tǒng)的整體性能。它可以被看作是事務(wù)處理�(yīng)用程序的“操作系�(tǒng)�。總體上�(lái)�(shuō),事�(wù)處理�(jiān)控有以下功能�

  �(jìn)程管理,包括啟動(dòng)server�(jìn)�、為其分配任�(wù)、監(jiān)控其�(zhí)行并�(duì)�(fù)載�(jìn)行平��

  事務(wù)管理,即保證在其�(jiān)控下的事�(wù)處理的原子�、一致性、獨(dú)立性和持久��

  通訊管理,為client和server之間提供了多種通訊�(jī)制,包括�(qǐng)求響�(yīng)、會(huì)�、排�(duì)、訂閱發(fā)布和廣播等�

  事務(wù)處理�(jiān)控能�?yàn)榇罅康腸lient提供服務(wù),比如飛�(jī)定票系統(tǒng)。如果server為每一�(gè)client都分配其所需要的資源的話,那server將不堪重�(fù)(如�2所示)。但�(shí)際上,在同一�(shí)刻并不是所有的client都需要請(qǐng)求服�(wù),而一旦某�(gè)client�(qǐng)求了服務(wù),它希望得到快速的響應(yīng)。事�(wù)處理�(jiān)控在操作系統(tǒng)之上提供一組服�(wù),對(duì)client�(qǐng)求�(jìn)行管理并為其分配相應(yīng)的服�(wù)�(jìn)�,使server在有限的系統(tǒng)資源下能夠高效地為大�(guī)模的客戶提供服務(wù)�

事務(wù)處理監(jiān)控中間件

維庫(kù)電子�,電子知�(shí),一查百��

已收錄詞�170104�(gè)