国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁(yè) > 營(yíng)銷資訊 > 信息時(shí)代 > 數(shù)據(jù)庫(kù)中間件(數(shù)據(jù)庫(kù))

數(shù)據(jù)庫(kù)中間件(數(shù)據(jù)庫(kù))

時(shí)間:2022-11-23 02:30:01 | 來源:信息時(shí)代

時(shí)間:2022-11-23 02:30:01 來源:信息時(shí)代

    數(shù)據(jù)庫(kù)中間件 : 位于操作系統(tǒng)之上、應(yīng)用程序之下,支持分布式軟件應(yīng)用開發(fā)、部署、運(yùn)行和管理的支撐軟件。如圖1所示,中間件是在操作系統(tǒng)的編程接口(application program interface,API)之上提供的一個(gè)高層的API,用以簡(jiǎn)化分布式軟件開發(fā)人員的開發(fā)工作。
分布式軟件系統(tǒng)開發(fā)和集成首先要面對(duì)多重異構(gòu)問題,包括硬件和網(wǎng)絡(luò)的異構(gòu)、操作系統(tǒng)和編程語言的異構(gòu)等,中間件作為一層共性的支撐軟件其主要的作用是為用戶屏蔽這些異構(gòu)。除此之外,中間件還提供一組共性支撐的服務(wù),如支持位置透明的命名服務(wù),支持失效透明的容錯(cuò)服務(wù),以及安全、實(shí)時(shí)、事務(wù)等相關(guān)服務(wù),為分布式軟件系統(tǒng)的開發(fā)提供多維度的透明。


圖1 中間件的位置


如果說操作系統(tǒng)是“使硬件可用的軟件”,中間件就可類比為“使分布式系統(tǒng)可編程的軟件”。如同在一臺(tái)沒有操作系統(tǒng)的裸機(jī)上很難進(jìn)行單機(jī)的軟件開發(fā)一樣,沒有中間件的支持,特別是當(dāng)系統(tǒng)異構(gòu)時(shí),進(jìn)行分布式軟件系統(tǒng)的開發(fā)也同樣困難。
中間件作為技術(shù)術(shù)語最早出現(xiàn)在20世紀(jì)80年代,用于描述網(wǎng)絡(luò)連接管理軟件,直到90年代隨著網(wǎng)絡(luò)技術(shù)的逐漸成熟,這個(gè)術(shù)語才獲得廣泛使用。20世紀(jì)90年代初,中間件主要是指一系列使分布式軟件應(yīng)用更容易構(gòu)建和管理的例程或服務(wù),后來業(yè)界又把中間件和關(guān)系數(shù)據(jù)庫(kù)聯(lián)系在一起?,F(xiàn)在中間件的內(nèi)涵更多地與網(wǎng)絡(luò)操作系統(tǒng)、分布式操作系統(tǒng)以及分布式計(jì)算機(jī)環(huán)境關(guān)聯(lián)在一起。目前主流的中間件包括: 消息中間件、企業(yè)應(yīng)用集成中間件、事務(wù)處理中間件、數(shù)據(jù)集成中間件、分布對(duì)象中間件CORBA、應(yīng)用服務(wù)器J2EE、Web服務(wù)中間件、.NET系列中間件等,它們因所面向的問題領(lǐng)域及對(duì)底層系統(tǒng)的抽象層次的不同而不同。不同種類的中間件有著不同的發(fā)展途徑,總體的發(fā)展趨勢(shì)從軟件開發(fā)模式的角度可以歸納為: 從過程到對(duì)象、從對(duì)象到服務(wù)。隨著網(wǎng)絡(luò)應(yīng)用領(lǐng)域的不斷拓展,面向網(wǎng)格計(jì)算和普適計(jì)算的中間件已初見端倪,中間件的家族也將不斷的成長(zhǎng)和優(yōu)勝劣汰。
(1)消息中間件是為支持和保障分布式應(yīng)用程序之間消息的異步收發(fā)而研制的一種中間件。該類中間件的核心機(jī)制是一個(gè)消息隊(duì)列,消息的收發(fā)者可以根據(jù)應(yīng)用的拓?fù)浣Y(jié)構(gòu)任意配置,消息也可以方便地在隊(duì)列中抽取和增加。很多消息中間件產(chǎn)品提供了消息持久存儲(chǔ)、復(fù)制及實(shí)時(shí)控制等機(jī)制。
(2) 事務(wù)處理中間件的主要功能是對(duì)大規(guī)模并發(fā)的分布式事務(wù)的執(zhí)行過程進(jìn)行監(jiān)控和管理。事務(wù)處理應(yīng)用往往是關(guān)鍵業(yè)務(wù)應(yīng)用(如銀行系統(tǒng)),因此對(duì)其正確性和性能都有很高的要求,事務(wù)處理中間件是其支撐平臺(tái)。大部分的事務(wù)處理中間件產(chǎn)品支持對(duì)異構(gòu)分布、分布數(shù)據(jù)資源的訪問,支持事務(wù)的ACID特性保持,并提供對(duì)多種共性的支撐服務(wù),如連接管理、負(fù)載均衡、容錯(cuò)等。
(3)數(shù)據(jù)集成中間件的主要功能是通過對(duì)不同來源、格式和特性的數(shù)據(jù)的轉(zhuǎn)換與包裝,提供統(tǒng)一的高層訪問服務(wù),實(shí)現(xiàn)各種異構(gòu)數(shù)據(jù)源的共享,其理想目標(biāo)是使用戶能夠像使用單個(gè)數(shù)據(jù)庫(kù)資源一樣地使用分布異構(gòu)數(shù)據(jù)資源。大多數(shù)的數(shù)據(jù)集成中間件都提供數(shù)據(jù)建模、抽取轉(zhuǎn)換和統(tǒng)一訪問接口等功能。
(4)分布對(duì)象中間件提供對(duì)遠(yuǎn)程對(duì)象的抽象,使用戶能夠像調(diào)用本地對(duì)象一樣地調(diào)用遠(yuǎn)程對(duì)象,同時(shí)也使分布式應(yīng)用的開發(fā)者能夠方便地使用面向?qū)ο蟮募夹g(shù),包括封裝、繼承以及多態(tài)等。CORBA是一個(gè)開放式的分布式對(duì)象計(jì)算標(biāo)準(zhǔn),CORBA技術(shù)不僅提供分布式對(duì)象的抽象,而且實(shí)現(xiàn)編程語言獨(dú)立及屏蔽不同廠商導(dǎo)致的異構(gòu)。DCOM是微軟公司的分布式對(duì)象技術(shù),DCOM實(shí)現(xiàn)編程語言獨(dú)立,但因?yàn)槠湟蕾囄④洸僮飨到y(tǒng),所以不能屏蔽與其他操作系統(tǒng)的異構(gòu)。COM+是DCOM的下一代技術(shù),它在編程的簡(jiǎn)易性上比DCOM有了很大的提高?;赟OAP協(xié)議的微軟分布式對(duì)象框架.NET,實(shí)現(xiàn)了編程語言獨(dú)立,并且可屏蔽不同廠商導(dǎo)致的異構(gòu),但其仍然依賴于微軟的操作系統(tǒng)。Java的RMI(remote method invocation)與CORBA和DCOM的分布式對(duì)象抽象類似,它提供屏蔽操作系統(tǒng)異構(gòu)及Java提供商異構(gòu)的支持,但其依賴于Java語言。
(5) Web服務(wù)中間件的核心思想是“把軟件當(dāng)作服務(wù)”,或者說把“服務(wù)”作為軟件系統(tǒng)設(shè)計(jì)和軟件之間相互操作的基本原則。服務(wù)的提供者和消費(fèi)者遵循服務(wù)接口規(guī)范發(fā)布服務(wù)、提供服務(wù),以及查找服務(wù)、請(qǐng)求服務(wù),這些操作與底層的操作系統(tǒng)及程序設(shè)計(jì)語言無關(guān)。該技術(shù)提供了一種新型的軟件集成、開發(fā)的模式。
上述多種中間件在市場(chǎng)上并存,并各有特色。開放的CORBA技術(shù)提供了完善的異構(gòu)屏蔽解決方案,但因?yàn)槠漭^高的技術(shù)門檻,以及缺乏有力的廠商和產(chǎn)品,其市場(chǎng)份額一直平平。微軟的DCOM和NET技術(shù)雖然在屏蔽異構(gòu)方面不足,但伴隨其操作系統(tǒng),得到較為廣泛的應(yīng)用。Java的RMI技術(shù)雖然依賴語言,但針對(duì)較為緊湊的應(yīng)用,具有獨(dú)特優(yōu)勢(shì)。分布對(duì)象中間件技術(shù)在封裝、繼承等方面對(duì)集成提供了更好的技術(shù)支持,但面向過程的中間件產(chǎn)品,如事務(wù)處理中間件和消息中間件仍然占據(jù)著較大的市場(chǎng)份額。面向服務(wù)的中間件以其分布式軟件開發(fā)、集成的模式出現(xiàn),但面對(duì)關(guān)鍵業(yè)務(wù)應(yīng)用時(shí)仍然存在著許多挑戰(zhàn)。
盡管中間件種類繁多,但其研究的內(nèi)容卻可歸納為互操作協(xié)議、接口描述語言、基礎(chǔ)服務(wù)和構(gòu)件技術(shù)等方面。
(1)消息通信對(duì)于計(jì)算機(jī)的重要性完全類似于語言對(duì)于人類的重要性。人類語言建立在雙方都熟悉的語言規(guī)則之上,而協(xié)議則是為計(jì)算機(jī)通信制定的必須遵循的規(guī)則。猶如人類具有許多不同種類的語言一樣,中間件技術(shù)歷史不長(zhǎng),但也出現(xiàn)了包括RPC、IIOP、RMI、SOAP在內(nèi)的一系列互操作協(xié)議?;ゲ僮鲄f(xié)議涉及到的主要技術(shù)包括數(shù)據(jù)表示、消息格式、向低層協(xié)議的映射、引用表示、連接管理等。互操作協(xié)議是中間件技術(shù)屏蔽網(wǎng)絡(luò)、操作系統(tǒng),乃至編程語言異構(gòu)的基礎(chǔ)。
(2) 為了使客戶能夠準(zhǔn)確、方便地訪問服務(wù)(功能模塊),服務(wù)提供者必須對(duì)所提供服務(wù)進(jìn)行準(zhǔn)確的描述,并將這些信息以一定的方式提供給客戶。接口定義語言的核心工作是定義服務(wù)的接口。中間件的接口定義主要是對(duì)服務(wù)提供的操作進(jìn)行描述,這些描述主要包括: 功能性描述、約束性描述、執(zhí)行方式描述和參數(shù)傳遞方式描述等。目前已有的接口描述語言包括RPC-IDL、OMG-IDL、MIDL、WSDL等。
(3)“分而治之”是解決復(fù)雜軟件系統(tǒng)建設(shè)的有效方法,而構(gòu)件技術(shù)則是對(duì)該思想的具體體現(xiàn)。如同汽車是由各種不同部件組裝而成一樣,基于構(gòu)件的軟件開發(fā)方法也是依照一定的接口規(guī)范對(duì)構(gòu)件進(jìn)行組裝的過程。所謂構(gòu)件“是一個(gè)不透明的功能實(shí)現(xiàn)體,能夠被第三方所組裝,且符合一個(gè)構(gòu)件模型”。從軟件開發(fā)、管理和運(yùn)行支撐等不同角度對(duì)構(gòu)件有著不同的理解。目前中間件技術(shù)領(lǐng)域中最為主要的構(gòu)件技術(shù)包括 OMG 組織的 CCM(component model,CORBA)和JCP組織的 (enterprise Java bean,EJB)等,涉及的主要技術(shù)包括構(gòu)件模型、構(gòu)件描述、構(gòu)件組裝、構(gòu)件部署和構(gòu)件運(yùn)行支撐等。
(4)基礎(chǔ)服務(wù)是軟件復(fù)用思想的具體體現(xiàn)。在大型分布式應(yīng)用中存在著大量的、具有共享特征的、且與具體應(yīng)用無關(guān)的“功能”,如命名、安全、事務(wù)、事件、時(shí)間等,稱實(shí)現(xiàn)這些功能的程序模塊為基礎(chǔ)服務(wù)。目前這些基礎(chǔ)服務(wù)已經(jīng)作為各種中間件技術(shù)的一個(gè)部分提供給用戶,使用戶在進(jìn)行軟件開發(fā)時(shí)能夠更加關(guān)注于自己的業(yè)務(wù)需求?;A(chǔ)服務(wù)研究的內(nèi)容涉及廣泛,幾乎遍及了計(jì)算機(jī)軟件技術(shù)的各個(gè)方面。
有時(shí)候中間件又被稱為“粘合劑”,因?yàn)樗ǔD軌驅(qū)⑦z留系統(tǒng)(企業(yè)信息化中采用特定技術(shù)已構(gòu)成的系統(tǒng))集成在一起。幾乎所有的主機(jī)應(yīng)用在設(shè)計(jì)時(shí)都未考慮互操作和遠(yuǎn)程訪問的問題,隨著企業(yè)應(yīng)用的發(fā)展,系統(tǒng)集成已成為重要的需求,如銀聯(lián)系統(tǒng)。因此需要一種技術(shù)在不影響已有系統(tǒng)正常工作的前提下,將系統(tǒng)集成起來。分布式對(duì)象中間件技術(shù)由于其封裝等特性,在遺留系統(tǒng)集成方面更具優(yōu)勢(shì),特別是CORBA技術(shù),它支持大多數(shù)類型的異構(gòu)屏蔽,并且允許在最大程度使用原有的系統(tǒng)。
使用中間件編程并不需要學(xué)習(xí)專門的編程語言,可以使用自己熟悉的編程語言如C++或Java。使用已有的語言來進(jìn)行中間件編程主要有三種方法。第一種方法是中間件系統(tǒng)提供一個(gè)函數(shù)庫(kù),開發(fā)人員通過調(diào)用函數(shù)庫(kù)來使用中間件; 第二種方法是采用一個(gè)外部的接口定義語言來描述遠(yuǎn)程調(diào)用的接口,并通過接口定義語言到編程語言的映射來支持開發(fā)者編寫代碼: 第三種方法是編程語言本身也是一種接口定義語言,如Java和RMI。
在一個(gè)大型分布式應(yīng)用系統(tǒng)中,可能在多個(gè)層次上使用不同種類的中間件。例如,底層開發(fā)人員可能直接采用CORBA技術(shù)開發(fā)一個(gè)服務(wù)(應(yīng)用模塊),采用Web Service技術(shù)將其進(jìn)一步封裝,并在注冊(cè)中心發(fā)布,而高層應(yīng)用開發(fā)者可以采用Web Service中間件技術(shù)發(fā)現(xiàn)相應(yīng)的服務(wù),并組裝成最終的應(yīng)用。

74
73
25
news

版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉