国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

J2EE、CORBA、DNA三種主流中間件平臺比較(1)

2019-11-18 12:42:05
字體:
供稿:網(wǎng)友

  一、概述
  1.中間件的概念
  
  隨著計算機技術(shù)的飛速發(fā)展,各種各樣的應(yīng)用軟件需要在各種平臺之間進行移植,或者一個平臺需要支持多種應(yīng)用軟件和治理多種應(yīng)用系統(tǒng),軟、硬件平臺和應(yīng)用系統(tǒng)之間需要可靠和高效的數(shù)據(jù)傳遞或轉(zhuǎn)換,使系統(tǒng)的協(xié)同性得以保證。這些,都需要一種構(gòu)筑于軟、硬件平臺之上,同時對更上層的應(yīng)用軟件提供支持的軟件系統(tǒng),而中間件正是在這個環(huán)境下應(yīng)孕而生。
  
  由于中間件技術(shù)正處于發(fā)展過程之中,因此目前尚不能對它進行精確的定義。
  
  比較流行的定義是:中間件是一種獨立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源。中間件位于客戶機/服務(wù)器的操作系統(tǒng)之上,治理計算資源和網(wǎng)絡(luò)通訊。
  
  從中間件的定義可以看出,中間件是一類軟件,而非一種軟件;中間件不僅僅實現(xiàn)互連,還要實現(xiàn)應(yīng)用之間的互操作;中間件是基于分布式處理的軟件,定義中非凡強調(diào)了其網(wǎng)絡(luò)通訊功能。
  
  2.中間件特點及優(yōu)勢
  
  通常意義下,中間件應(yīng)具有以下的一些特點:滿足大量應(yīng)用的需要;運行于多種硬件和OS平臺;支持分布式計算,提供跨網(wǎng)絡(luò)、硬件和OS平臺的透明性的應(yīng)用或服務(wù)的交互功能;支持標(biāo)準(zhǔn)的協(xié)議;支持標(biāo)準(zhǔn)的接口。
  
  程序員通過調(diào)用中間件提供的大量API,實現(xiàn)異構(gòu)環(huán)境的通訊,從而屏蔽異構(gòu)系統(tǒng)中復(fù)雜的操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議。
  
  中間件提供客戶機與服務(wù)器之間的連接服務(wù),這些服務(wù)具有標(biāo)準(zhǔn)的程序接口和協(xié)議。針對不同的操作系統(tǒng)和硬件平臺,它們可以有符合接口和協(xié)議規(guī)范的多種實現(xiàn)。
  
  由于標(biāo)準(zhǔn)接口對于可移植性和標(biāo)準(zhǔn)協(xié)議對于互操作性的重要性,中間件已成為許多標(biāo)準(zhǔn)化工作的主要部分。對于應(yīng)用軟件開發(fā),中間件遠(yuǎn)比操作系統(tǒng)和網(wǎng)絡(luò)服務(wù)更為重要,中間件提供的程序接口定義了一個相對穩(wěn)定的高層應(yīng)用環(huán)境,不管底層的計算機硬件和系統(tǒng)軟件怎樣更新?lián)Q代,只要將中間件升級更新,并保持中間件對外的接口定義不變,應(yīng)用軟件幾乎不需任何修改,從而保護了企業(yè)在應(yīng)用軟件開發(fā)和維護中的重大投資。
  
  中間件是一種獨立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源。中間件軟件治理著客戶端程序和數(shù)據(jù)庫或者早期應(yīng)用軟件之間的通訊。
  
  中間件在分布式的客戶和服務(wù)之間扮演著承上啟下的角色,如事務(wù)治理、負(fù)載均衡以及基于Web的計算等。
  
  利用這些技術(shù)有助于減輕應(yīng)用軟件開發(fā)者的負(fù)擔(dān),使他們利用現(xiàn)有的硬件設(shè)備、操作系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)庫治理系統(tǒng)以及對象模型創(chuàng)建分布式應(yīng)用軟件時更加得心應(yīng)手。由于中間件能夠保護企業(yè)的投資,保證應(yīng)用軟件的相對穩(wěn)定,實現(xiàn)應(yīng)用軟件的功能擴展;同時中間件產(chǎn)品在很大程度上簡化了一個由不同硬件構(gòu)成的分布式處理環(huán)境的復(fù)雜性,所以它的出現(xiàn)正日益引起用戶的關(guān)注。
  
  世界聞名的咨詢機構(gòu)The Standish Group在一份研究報告中歸納了中間件的十大優(yōu)越性:
  
  (1)應(yīng)用開發(fā):The Standish Group 分析了100個要害應(yīng)用系統(tǒng)中的業(yè)務(wù)邏輯程序、應(yīng)用邏輯程序及基礎(chǔ)程序所占的比例;業(yè)務(wù)邏輯程序和應(yīng)用邏輯程序僅占總程序量的30%,而基礎(chǔ)程序占了70%,使用傳統(tǒng)意義上的中間件一項就可以節(jié)省25%~60%的應(yīng)用開發(fā)費用。如是以新一代的中間件系列產(chǎn)品來組合應(yīng)用,同時配合以可復(fù)用的商務(wù)對象構(gòu)件,則應(yīng)用開發(fā)費用可節(jié)省至80%。
  
  (2)系統(tǒng)運行:沒有使用中間件的應(yīng)用系統(tǒng),其初期的資金及運行費用的投入要比同規(guī)模的使用中間件的應(yīng)用系統(tǒng)多一倍。
  
  (3)開發(fā)周期:基礎(chǔ)軟件的開發(fā)是一件耗時的工作,若使用標(biāo)準(zhǔn)商業(yè)中間件則可縮短開發(fā)周期50%~75%。
  
  (4)減少項目開發(fā)風(fēng)險:研究表明,沒有使用標(biāo)準(zhǔn)商業(yè)中間件的要害應(yīng)用系統(tǒng)開發(fā)項目的失敗率高于90%。企業(yè)自己開發(fā)內(nèi)置的基礎(chǔ)(中間件)軟件是得不償失的,項目總的開支至少要翻一倍,甚至?xí)畮妆丁?br />  
  (5)合理運用資金:借助標(biāo)準(zhǔn)的商業(yè)中間件,企業(yè)可以很輕易地在現(xiàn)有或遺留系統(tǒng)之上或之外增加新的功能模塊,并將它們與原有統(tǒng)無縫集合。依靠標(biāo)準(zhǔn)的中間件,可以將老的系統(tǒng)改頭換面成新潮的Internet/Intranet 應(yīng)用系統(tǒng)。
  
  (6)應(yīng)用集合:依靠標(biāo)準(zhǔn)的中間件可以將現(xiàn)有的應(yīng)用、新的應(yīng)用和購買的商務(wù)構(gòu)件融合在一起進行應(yīng)用集合。
  
  (7)系統(tǒng)維護:需要一提的是,基礎(chǔ)(中間件)軟件的自我開發(fā)是要付出很高代價的,此外,每年維護自我開發(fā)的基礎(chǔ)(中間件)軟件的開支則需要當(dāng)初開發(fā)費用的15%~25%,每年應(yīng)用程序的維護開支也還需要當(dāng)初項目總費用的10%~20%左右。而在一般情況下,購買標(biāo)準(zhǔn)商業(yè)中間件每年只需付出產(chǎn)品價格的15%~20%的維護費,當(dāng)然,中間件產(chǎn)品的具體價格要依據(jù)產(chǎn)品購買數(shù)量及哪一家廠商而定。
  
  (8)質(zhì)量:基于企業(yè)自我建造的基礎(chǔ)(中間件)軟件平臺上的應(yīng)用系統(tǒng),每增加一個新的模塊,就要相應(yīng)地在基礎(chǔ)(中間件)軟件之上進行改動。而標(biāo)準(zhǔn)的中間件在接口方面都是清楚和規(guī)范的。標(biāo)準(zhǔn)中間件的規(guī)范化模塊可以有效地保證應(yīng)用系統(tǒng)質(zhì)量及減少新舊系統(tǒng)維護開支。
  (9)技術(shù)革新:企業(yè)對自我建造的基礎(chǔ)(中間件)軟件平臺的頻繁革新是極不輕易實現(xiàn)的(不實際的)。而購買標(biāo)準(zhǔn)的商業(yè)中間件,則對技術(shù)的發(fā)展與變化可以放心,中間件廠商會責(zé)無旁貸地把握技術(shù)方向和進行技術(shù)革新。
  
  (10)增加產(chǎn)品吸引力:不同的商業(yè)中間件提供不同的功能模型,合理使用,可以讓你的應(yīng)用更輕易增添新的表現(xiàn)形式與新的服務(wù)項目。從另一個角度看,可靠的商業(yè)中間件也使得企業(yè)的應(yīng)用系統(tǒng)更完善,更出眾。
  
  具體地說,中間件屏蔽了低層操作系統(tǒng)的復(fù)雜性,使程序開發(fā)人員面對一個簡單而統(tǒng)一的開發(fā)環(huán)境,減少程序設(shè)計的復(fù)雜性,將注重力集中在自己的業(yè)務(wù)上,不必再為程序在不同系統(tǒng)軟件上的移植而重復(fù)工作,從而大大減少了技術(shù)上的負(fù)擔(dān)。
  
  中間件帶給應(yīng)用系統(tǒng)的不只是開發(fā)的簡單、開發(fā)周期的縮短,也減少了系統(tǒng)的維護、運行和治理的工作量,還減少了計算機總體費用的投入。The Standish Group的調(diào)查報告顯示,由于采用了中間件技術(shù),應(yīng)用系統(tǒng)的總建設(shè)費用可以減少50%左右。在網(wǎng)絡(luò)經(jīng)濟大發(fā)展、電子商務(wù)大發(fā)展的今天,從中間件獲得利益的不只是IT廠商,IT用戶同樣是贏家,并且是更有把握的贏家。
  
  中間件作為新層次的基礎(chǔ)軟件,其重要作用是將不同時期、在不同操作系統(tǒng)上開發(fā)應(yīng)用軟件集成起來,彼此像一個天衣無縫的整體協(xié)調(diào)工作,這是操作系統(tǒng)、數(shù)據(jù)庫治理系統(tǒng)本身做不了的。中間件的這一作用,在技術(shù)不斷發(fā)展之后,使以往在應(yīng)用軟件上的勞動成果仍然物有所用,節(jié)約了大量的人力、財力投入。
  
  3.中間件的應(yīng)用領(lǐng)域與分類
  
  隨著計算機軟件技術(shù)的發(fā)展,中間件技術(shù)也已經(jīng)日漸成熟,并且出現(xiàn)了不同層次、不同類型的中間件產(chǎn)品。按照IDC 的分類方法,中間件可分為六類。分別是數(shù)據(jù)訪問中間件、遠(yuǎn)程過程調(diào)用中間件、消息中間件、交易中間件、對象中間件等。
  
  數(shù)據(jù)訪問中間件:是為了建立數(shù)據(jù)應(yīng)用資源互操作的模式,對異構(gòu)環(huán)境下的數(shù)據(jù)庫實現(xiàn)聯(lián)接或文件系統(tǒng)實現(xiàn)聯(lián)接的中間件;
  
  遠(yuǎn)程過程調(diào)用中間件:通過這種遠(yuǎn)程過程調(diào)用機制,程序員編寫客戶方的應(yīng)用,需要時可以調(diào)用位于遠(yuǎn)端服務(wù)器上的過程;
  
  消息中間件:用來屏蔽掉各種平臺及協(xié)議之間的特性,進行相互通信,實現(xiàn)應(yīng)用程序之間的協(xié)同;
  
  交易中間件:是在分布、異構(gòu)環(huán)境下提供保證交易完整性和數(shù)據(jù)完整性的一種環(huán)境平臺;
  
  對象中間件:在分布、異構(gòu)的網(wǎng)絡(luò)計算環(huán)境中,可以將各種分布對象有機地結(jié)合在一起,完成系統(tǒng)的快速集成,實現(xiàn)對象重用。
  
  目前國內(nèi)外有不少廠商都開發(fā)出自己的中間件產(chǎn)品,其中有全球最大的獨立中間件廠商BEA公司,還有像IBM、Oracl e和Microsoft、HP、Sun等大廠商也早已涉足電子商務(wù)中間件。
  
  面向?qū)ο蟮闹虚g件是對象技術(shù)和分布式計算發(fā)展的產(chǎn)物,業(yè)界普遍認(rèn)為面向?qū)ο笫墙窈笾虚g件發(fā)展的主流方向,它提供一種通訊機制,透明地在異構(gòu)的分布計算環(huán)境中傳遞對象請求,而這些對象可以位于本地或者遠(yuǎn)程機器。
  
  面向?qū)ο髽?biāo)準(zhǔn)原本只有一個,即CORBA(公共對象請求代理體系結(jié)構(gòu)),該標(biāo)準(zhǔn)由包括BEA、IBM、Oracle、Sun和Sybas e等公司在內(nèi)的眾多廠商一起制定,從而形成了一個龐大的CORBA聯(lián)盟勢力。后來,Sun推出了企業(yè)級javaBeans(EJB),用自己易使用的程序模型來對CORBA做出了改進。微軟COM(Component Object Model,組件對象模型)的出現(xiàn),使面向?qū)ο笾虚g件市場里又多了一個標(biāo)準(zhǔn),這樣,面向?qū)ο笾虚g件產(chǎn)品實際上形成了兩大標(biāo)準(zhǔn),一是微軟的COM,一是JavaBeans。
  
  從宏觀上看,中間件可以分為3大類:
  
  數(shù)據(jù)類:用于數(shù)據(jù)的存取、利用和增值,此類中間件用于構(gòu)建以數(shù)據(jù)為中心的應(yīng)用。
  
  處理類:把分布在網(wǎng)絡(luò)結(jié)點上的各個應(yīng)用或處理連接在一起,形成一個統(tǒng)一的分布式應(yīng)用。
  
  分布式構(gòu)件類:支持構(gòu)件式應(yīng)用,未來應(yīng)用的發(fā)展方向,目前競爭激烈。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 洱源县| 南和县| 玉林市| 临沂市| 开远市| 桂阳县| 霸州市| 茂名市| 凤山市| 洛川县| 克山县| 东乡县| 宣恩县| 老河口市| 松潘县| 柳州市| 汉源县| 抚州市| 普兰县| 宜川县| 大港区| 明光市| 灵武市| 巴彦县| 阳江市| 荔波县| 巴彦淖尔市| 麻城市| 米泉市| 彰化县| 平阳县| 文水县| 区。| 屯昌县| 沂源县| 鲜城| 合作市| 丹东市| 汪清县| 冷水江市| 安庆市|