日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件

摘 要:分布式對(duì)象中間件技術(shù)是為了解決分布計(jì)算和軟件復(fù)用過程中存在的異構(gòu)問題而提出的。,EJB,COM/是目前主要的3大中間件技術(shù),他們都有自己的優(yōu)勢(shì)應(yīng)用領(lǐng)域,和的結(jié)合在解決 WWW應(yīng)用方面具有無比的優(yōu)勢(shì)。本文介紹了基于/ 的 WWW信息查詢系統(tǒng)開發(fā)的一般方法。

關(guān)鍵詞:中間件;分布式對(duì)象中間件;CORBA; ?

隨著計(jì)算機(jī)技術(shù),尤其是技術(shù)的發(fā)展,跨地域、跨企業(yè)、跨業(yè)務(wù)的計(jì)算機(jī)應(yīng)用越來越廣泛。但是不同硬件平臺(tái)、網(wǎng)絡(luò)環(huán)境、數(shù)據(jù)庫等異質(zhì)性因素影響了計(jì)算機(jī)系統(tǒng)集成應(yīng)用。應(yīng)用開發(fā)過程中大約有70%的時(shí)間和精力用于解決與業(yè)務(wù)邏輯沒有直接關(guān)系的跨平臺(tái)難題,因此,有必要將分布式應(yīng)用所面臨的共性問題進(jìn)行提煉,抽象形成一個(gè)可復(fù)用的軟件部件—中間件—供應(yīng)用軟件使用。過去中間件系統(tǒng)如DCE(Distributed Computing Environment)是面向過程的軟件復(fù)用模式體系結(jié)構(gòu),隨著面向?qū)ο蠹夹g(shù)的發(fā)展和客戶/服務(wù)器模式的流行,分布式對(duì)象中間件技術(shù)已成為分布計(jì)算的主流技術(shù)。本文介紹了3大分布式對(duì)象中間件技術(shù)及基于CORBA/的WWW系統(tǒng)開發(fā)的一般過程。?

1中間件技術(shù)

中間件是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用借助這種軟件可以在不同技術(shù)之間共享資源,中間件位于客戶機(jī)服務(wù)器的操作系統(tǒng)之上,管理計(jì)算資源和網(wǎng)絡(luò)通訊。中間件的目標(biāo)是要解決系統(tǒng)的互連和互操作,他的核心是解決名字服務(wù)、安全控制、并發(fā)控制、可靠性保證、效率保證等方面的問題,要實(shí)現(xiàn)互聯(lián)還要解決支持各種通訊協(xié)議、各種通訊服務(wù)模式、傳播各種數(shù)據(jù)內(nèi)容、數(shù)據(jù)格式翻譯、流量控制、數(shù)據(jù)加密、數(shù)據(jù)壓縮等。按照IDC的分類方法,中間件分為6類:終端仿真/屏幕轉(zhuǎn)換中間件、數(shù)據(jù)訪問中間件、遠(yuǎn)程過程調(diào)用中間件、消息中間件、交易中間件和分布式對(duì)象中間件。

傳統(tǒng)的對(duì)象技術(shù)通過封裝、繼承及多態(tài)性提供良好的代碼重用功能。但是,這些對(duì)象只存在于一個(gè)程序中,外界并不知道他們的存在,也無法訪問他們。分布式對(duì)象中間件就是要解決這些問題,他提供一個(gè)標(biāo)準(zhǔn)構(gòu)件框架,能使不同廠家的軟件通過不同地址空間、網(wǎng)絡(luò)和操作系統(tǒng)進(jìn)行交互訪問。對(duì)象技術(shù)的優(yōu)勢(shì)和分布式對(duì)象中間件的標(biāo)準(zhǔn)化,促使對(duì)象中間件功能最終將涵蓋幾類中間件的功能,從而成為中間件產(chǎn)品的主流。
?
2分布式對(duì)象中間件技術(shù)?

2.1公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu)CORBA

CORBA由對(duì)象管理組織OMG于1991年提出,其旨在將錯(cuò)綜復(fù)雜的網(wǎng)絡(luò)編程從單獨(dú)的組件和應(yīng)用中移走。ORB是CORBA平臺(tái)的核心,他提供了客戶—對(duì)象間實(shí)現(xiàn)透明通信的方法,當(dāng)客戶激活一個(gè)方法時(shí),ORB負(fù)責(zé)定位對(duì)象實(shí)現(xiàn)并透明激活將請(qǐng)求傳輸給對(duì)象實(shí)現(xiàn)并返回結(jié)果。IDL是不依賴于具體編程語言和計(jì)算平臺(tái)的接口語言,用來定義對(duì)象接口,IDL對(duì)描述跨平臺(tái),跨語言應(yīng)用程序提供一個(gè)公共的表示方式,IDL編譯器可根據(jù)用戶需要將IDL定義轉(zhuǎn)化為應(yīng)用程序語言,如C++,等。IDL樁為客戶提供了靜態(tài)調(diào)用對(duì)象方式,IDL構(gòu)架為客戶提供了靜態(tài)實(shí)現(xiàn)方式,他們由IDL編譯器產(chǎn)生,作為具有調(diào)用功能的子例程分別在客戶方和服務(wù)器方使用。而動(dòng)態(tài)調(diào)用接口DII( Invocation )和動(dòng)態(tài)構(gòu)架接口DSI( Skeleton )提供了動(dòng)態(tài)調(diào)用方式和動(dòng)態(tài)實(shí)現(xiàn)方式。在ORB核心和對(duì)象實(shí)現(xiàn)之間還有對(duì)象適配器,他負(fù)責(zé)服務(wù)對(duì)象的注冊(cè)、對(duì)象引用的創(chuàng)建和解釋、對(duì)象實(shí)現(xiàn)的激活和去活以及客戶請(qǐng)求的分發(fā)等。ORB之間的互操作主要是由ORB橋,( InterORB Protocol)和EISP(Environment Specific InterORB Protocol)等互操作協(xié)議來規(guī)定。是建立在TCP協(xié)議之上的基于連接的協(xié)議。

2.2分布組件對(duì)象模式

是Microsoft與業(yè)界廠商合作提出的一種分布構(gòu)件對(duì)象模型。DCOM起源于動(dòng)態(tài)數(shù)據(jù)交換DDE技術(shù)。通過剪切/粘貼(cut/)實(shí)現(xiàn)2個(gè)應(yīng)用程序之間共享數(shù)據(jù)的動(dòng)態(tài)交換。對(duì)象連接和嵌入OLE就是從DDE引伸而來的,隨后Microsoft引入了構(gòu)件對(duì)象模型COM,形成了COM對(duì)象之間實(shí)現(xiàn)互操作的二進(jìn)制標(biāo)準(zhǔn)。COM規(guī)定了對(duì)象模型和編程要求,使COM對(duì)象可以與對(duì)象相互操作。DCOM出現(xiàn)是為了彌補(bǔ)COM在支持遠(yuǎn)程組件方面的不足。他為分布在網(wǎng)絡(luò)不同節(jié)點(diǎn)的2個(gè)COM組件提供了互操作的基礎(chǔ)結(jié)構(gòu)。

將COM,DCOM,OLE及這些服務(wù)結(jié)合起來形成了微軟創(chuàng)造的分布式網(wǎng)絡(luò)互聯(lián)體系結(jié)構(gòu)DNA。

2.3EJB企業(yè)JAVA平臺(tái)

近年來,Sun Microsystem公司提出的基于JAVABean組件技術(shù)的EJB及 JAVA平臺(tái),JAVABean是JAVA向組件方面的發(fā)展,組件的單位叫Bean或JAVABean,這種組件模式是JAVA編寫的可移植的,平臺(tái)獨(dú)立的組件模式,在分布計(jì)算模型中,可用來構(gòu)建客戶端程序。EJB于1998年提出,是服務(wù)器方的組件模式,定義了開發(fā)和布署可重用的JAVA服務(wù)器組件模式和API規(guī)范。JAVABeans和EJB體系結(jié)構(gòu)之間,一個(gè)最明顯的區(qū)別是事件處理。JAVABean是為緊耦合的桌面環(huán)境而設(shè)計(jì),使用局部事件模式,不利于系統(tǒng)的集成。EJB體系結(jié)構(gòu)對(duì)分布式的事件提供靈活的支持,允許遠(yuǎn)程客戶通過遠(yuǎn)程方法調(diào)用API訪問服務(wù)器功能。適應(yīng)分布式體系結(jié)構(gòu)中的多層應(yīng)用。EJB還不是一個(gè)完整的平臺(tái),其提供服務(wù)也有限,于是在EJB的基礎(chǔ)上,提出能適應(yīng)廣泛企業(yè)計(jì)算的 JAVA平臺(tái)技術(shù)。 JAVA平臺(tái)包括EJB ,JSP,Servlet,JDBC等組件。

上述3種中間件各有特點(diǎn),CORBA可以跨各種操作平臺(tái),包括Windows OS ,甚至支持DOS操作系統(tǒng)而DCOM只支持Win 32; 同時(shí)CORBA跨多種語言,支持C++,Smalltalk,JAVA,,Ada等語言。DCOM主要以桌面Wintel同質(zhì)平臺(tái)對(duì)象跨應(yīng)用使用見長(zhǎng),支持帶有指針結(jié)構(gòu)的語言如C,C++而不支持JAVA語言。Enterprise JAVA在Internet環(huán)境下集組件模式、跨異構(gòu)平臺(tái)、兼具事務(wù)處理、數(shù)據(jù)庫連接等許多基礎(chǔ)結(jié)構(gòu)服務(wù),但僅限于支持JAVA語言。因此我們利用JAVA語言具有簡(jiǎn)單、面向?qū)ο蟆⒎植际?、解釋型、健壯、安全、可移植性的特點(diǎn)結(jié)合CORBA的跨異構(gòu)平臺(tái)的特性實(shí)現(xiàn)對(duì)象的重用。
?
3CORBA/JAVA的WWW應(yīng)用系統(tǒng)

我們?cè)O(shè)計(jì)的系統(tǒng)是要實(shí)現(xiàn)以下目標(biāo):在客戶端用瀏覽器下載服務(wù)器上小程序Applet,通過Java虛擬機(jī)和CORBA的ORB實(shí)現(xiàn)對(duì)遠(yuǎn)端服務(wù)對(duì)象的調(diào)用,并通過服務(wù)對(duì)象訪問遠(yuǎn)端數(shù)據(jù)庫,最后返回查詢結(jié)果并在瀏覽器上顯示。其系統(tǒng)結(jié)構(gòu)圖如圖1所示。

3.1程序設(shè)計(jì)與實(shí)現(xiàn)

該系統(tǒng)用Borlard Jbuilder 5.0進(jìn)行開發(fā), Jbuilder 5.0提供了JAVA語言的CORBA開發(fā)支持,VisiBroker for JAVA是一個(gè)內(nèi)置于Jbuild 3.0 IDE的開發(fā)工具,可以用來建立、管理和開發(fā)分布式的跨多種平臺(tái)的開放的、易用的、可交互的 CORBA Java應(yīng)用程序。這里開發(fā)一個(gè)可以訪問MS SQL 數(shù)據(jù)庫3層C/S模式應(yīng)用。在這個(gè)系統(tǒng)中要用到定義JDBC API的.sql包,該包定義了JDBC所有的類,接口和方法。主要的類和接口有Manager—處理驅(qū)動(dòng)程序的裝入;.sql.—驅(qū)動(dòng)程序接口;.sql.Statement為sql語句提供一個(gè)容器,java.sql.Connection表示到特定數(shù)據(jù)的連接。

(1)定義CORBA objects和編譯IDL接口

首先定義一個(gè)接口模塊Query?idl,該模塊包含的DataQuery接口提供了一個(gè)連接數(shù)據(jù)庫并返回查詢結(jié)果的方法dbQuery( ):

用visiBroker IDL編譯器(idl2java)編譯Query?idl產(chǎn)生一個(gè)JAVA接口DataQuery.java和其他必需的JAVA文件。其中_st_DataQuery.java是客戶端的stub,_sk_DataQueryImplBase.java是服務(wù)器端的骨架(skeleton),另外還包括為傳遞參數(shù)提供支持的DataQueryHolder.java和提供輔助功能DataQueryHelper.java。

(2) CORBA接口的實(shí)現(xiàn)

對(duì)象實(shí)現(xiàn)類必須結(jié)合編譯產(chǎn)生的骨架來完成,類DataQueryImpl.java需要繼承由 IDL編譯產(chǎn)生的骨架_sk_DataQueryImplBase類。其中dbQuery( ) 通過JAVA.JDBC.API實(shí)現(xiàn)連接數(shù)據(jù)庫并返回查詢結(jié)果:

(3)創(chuàng)建服務(wù)端應(yīng)用程序

類?java服務(wù)程序負(fù)責(zé)下列任務(wù):初始化ORB和BOA,建立服務(wù)對(duì)象DataQueryImpl,通知對(duì)象可用及準(zhǔn)備接受請(qǐng)求。

(4)創(chuàng)建客戶端程序

實(shí)現(xiàn)步驟:初始化CORBA環(huán)境,查找定位到DataQuery對(duì)象,然后調(diào)用dbquery( )方法。

最后編譯服務(wù)器端和客戶端程序,設(shè)置好程序中用到的數(shù)據(jù)源,啟動(dòng)提供對(duì)象查找服務(wù)的. Agent和服務(wù)端應(yīng)用程序.java,最后在客戶端IE 地址欄健入:http://:15000/clientApplet.html運(yùn)行客戶程序即可實(shí)現(xiàn)遠(yuǎn)端查詢。
?
4結(jié)語

中間件屏蔽了操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議的差異,為應(yīng)用層軟件提供了多種通訊機(jī)制和統(tǒng)一的應(yīng)用平臺(tái),簡(jiǎn)化了軟件開發(fā)的復(fù)雜度,提高了開發(fā)的效率。CORBA已成為軟件開發(fā)的主流。CORBA獨(dú)立于網(wǎng)絡(luò)協(xié)議,獨(dú)立于編程語言,獨(dú)立于軟硬件平臺(tái),是目前最有生命力的跨平臺(tái)分布計(jì)算技術(shù)。JAVA由于其健壯性,安全性,移動(dòng)性和跨平臺(tái)及“一次編寫,各處運(yùn)行”的優(yōu)點(diǎn),使其成為WWW網(wǎng)上開發(fā)最好的語言。毫無疑問,JAVA和CORBA的結(jié)合將會(huì)把分布計(jì)算和軟件復(fù)用推向新的階段。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉