• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于TAO的CORBA應(yīng)用軟件設(shè)計

      2010-09-26 02:00:12成玉榮王聰麗
      無線電工程 2010年11期
      關(guān)鍵詞:可擴展性服務(wù)端應(yīng)用程序

      成玉榮,王聰麗

      (1.中國電子科技集團公司第五十四研究所,河北石家莊050081;2.軍械工程學(xué)院,河北石家莊050003)

      0 引言

      CORBA是由對象管理組織OMG制定的分布式體系結(jié)構(gòu),主要是為了解決異構(gòu)的分布式處理環(huán)境中系統(tǒng)互連而提出的一種方案?;贑ORBA平臺能夠?qū)崿F(xiàn)不同應(yīng)用程序之間的透明交互,隨著網(wǎng)絡(luò)結(jié)構(gòu)的日益復(fù)雜化,CORBA的應(yīng)用越來越廣泛,在面向服務(wù)的SOA系統(tǒng)中是很好的服務(wù)組件的開發(fā)平臺。

      目前基于CORBA規(guī)范的產(chǎn)品很多,較流行的有Orbix2000、TAO 、Visibroker、InforBus和 InterBus等 ,這些產(chǎn)品以其各自的特點應(yīng)用于不同的對象請求代理(ORB)系統(tǒng)中,其中TAO為開源的ORB平臺,其功能的實時性、軟件的可配置性與可擴展性使其在許多大規(guī)模的通信、計算機公司得以廣泛應(yīng)用。

      1 TAO體系結(jié)構(gòu)特點

      TAO是由美國華盛頓大學(xué)分布式對象計算組織開發(fā)的開放源碼的CORBA產(chǎn)品,其實現(xiàn)基于可適應(yīng)通信環(huán)境(ACE)。ACE是一種免費開放源碼的面向?qū)ο罂蚣芙Y(jié)構(gòu),該結(jié)構(gòu)實現(xiàn)通信軟件的核心并發(fā)和分布模式。TAO系統(tǒng)中含有網(wǎng)絡(luò)接口、OS、通信協(xié)議以及遵循CORBA的中間件組件和服務(wù)等,其系統(tǒng)結(jié)構(gòu)如圖1所示。

      圖1 TAO的系統(tǒng)結(jié)構(gòu)

      其系統(tǒng)結(jié)構(gòu)特點如下:

      ①TAO實現(xiàn)了CORBA 2.6規(guī)范中的說明,具有規(guī)范性和通用性,能夠與其他同標(biāo)準(zhǔn)的ORB產(chǎn)品進行互通互聯(lián);

      ②TAO基于ACE實現(xiàn)的ORB具有更加靈活、高效、事件驅(qū)動和并發(fā)的特點;

      ③TAO基于ACE實現(xiàn),具有一些增強特性,可用于確保高性能及實時應(yīng)用的高效、可預(yù)測和可伸縮的QoS行為;

      ④ACE提供開源的C++組件包,使TAO具有更強的可擴展性和靈活性;

      ⑤TAO是高性能實時ORB終端系統(tǒng),能夠很好地適用于異構(gòu)的分布式應(yīng)用環(huán)境。

      2 基于TAO的應(yīng)用軟件設(shè)計

      通過分析TAO的結(jié)構(gòu)特點,TAO的實時性與靈活性適合開發(fā)分布式、可擴展的應(yīng)用軟件。TAO的安裝可根據(jù)工程需求進行配置,選擇所需要的組件進行編譯配置,降低資源占用,提高軟件運行效率。

      2.1 軟件環(huán)境設(shè)置

      TAO在VC5.0、VC6.0和 visual studio2008中均可以編譯,TAO可以被編譯成DLL版(動態(tài)鏈接)和LIB版(靜態(tài)鏈接)2種版本,根據(jù)應(yīng)用需求通過工程參數(shù)配置進行控制。

      基于TAO開發(fā)應(yīng)用程序時,需要在應(yīng)用程序的工程配置選項中設(shè)置所用的TAO的庫文件、頭文件以及執(zhí)行文件的路徑。

      2.2 應(yīng)用程序設(shè)計流程

      應(yīng)用程序設(shè)計是基于已編譯好的TAO環(huán)境進行工程開發(fā),具體流程如圖2所示。

      圖2 基于TAO的應(yīng)用程序開發(fā)流程

      圖2中主要步驟包括:設(shè)計和編譯接口定義語言(IDL)接口、設(shè)計和編譯客戶端應(yīng)用程序、設(shè)計和編譯服務(wù)器端應(yīng)用程序。

      2.2.1 IDL接口設(shè)計與編譯

      CORBA應(yīng)用程序開發(fā),首先要用IDL定義服務(wù)對象的公共接口,IDL是一種描述性語言,可以映射成各種編程語言,TAO支持IDL到C++語言的映射,由TAO的IDL編譯器完成。編譯后生成客戶端存根文件和服務(wù)端框架文件,為客戶端和服務(wù)端的軟件開發(fā)提供基本軟件框架。

      2.2.2 客戶端軟件設(shè)計

      客戶端應(yīng)用軟件設(shè)計是在IDL編譯器生成的客戶方框架代碼的基礎(chǔ)上,根據(jù)應(yīng)用需要設(shè)計ORB接口調(diào)用處理流程,實現(xiàn)客戶端對服務(wù)端的方法調(diào)用的應(yīng)用??蛻舳丝蚣艽a相當(dāng)于服務(wù)對象在客戶端的代理,是能夠?qū)⒈镜卣埱筠D(zhuǎn)換為網(wǎng)絡(luò)請求的ORB專用對象接口的框架代碼。其調(diào)用請求通過ORB完成,可以由ORB定位所調(diào)用的服務(wù)對象,因此,客戶端應(yīng)用程序無需知道服務(wù)端應(yīng)用程序用何種語言實現(xiàn),運行于何種操作系統(tǒng)平臺上。

      客戶端與服務(wù)器端的請求響應(yīng)方式分為同步方式和異步方式,客戶端根據(jù)軟件的實時性需求可采用合適的請求響應(yīng)方式,另外客戶端還可通過事件或通知的方式接收服務(wù)器端主動上報的信息。

      下面以同步調(diào)用方式介紹客戶端應(yīng)用程序的開發(fā)流程,詳細流程如圖3所示。

      圖3 客戶端軟件開發(fā)流程

      2.2.3 服務(wù)端軟件設(shè)計

      服務(wù)端應(yīng)用軟件設(shè)計就是在服務(wù)端框架代碼的基礎(chǔ)上,根據(jù)應(yīng)用需求,采用合適的軟件架構(gòu),設(shè)計服務(wù)端軟件運行流程,實現(xiàn)服務(wù)對象接口類及其方法的過程。服務(wù)端框架代碼是IDL編譯器生成的一系列代碼文件,能夠幫助對象適配器將一個請求傳遞到指定對象實現(xiàn)。服務(wù)方程序是一個擁有1個或多個CORBA對象的應(yīng)用程序,通過對象實現(xiàn)向客戶方提供方法調(diào)用結(jié)果。

      服務(wù)端作為客戶端的方法實現(xiàn)集,其響應(yīng)客戶端調(diào)用的方式可分為同步和異步2種方式,另外還可以主動向客戶端發(fā)送事件或通知與客戶端進行信息傳輸。

      服務(wù)端的應(yīng)用軟件包含IDL生成的框架程序、對象實現(xiàn)類程序和服務(wù)方主程序。

      首先應(yīng)創(chuàng)建服務(wù)對象實現(xiàn)類,類定義文件中應(yīng)包含IDL編譯生成的服務(wù)器框架頭文件,實現(xiàn)文件要實現(xiàn)對象方法的處理。

      服務(wù)方主程序主要包括ORB的初始化、對象實例的創(chuàng)建和生成對象引用等處理。服務(wù)端軟件的總體設(shè)計流程如圖4所示。

      圖4 服務(wù)器端軟件開發(fā)流程

      3 工程應(yīng)用及效果

      3.1 應(yīng)用結(jié)構(gòu)與流程

      基于CORBA的綜合網(wǎng)絡(luò)管理系統(tǒng)采用TAO為ORB平臺進行開發(fā),主要完成在網(wǎng)絡(luò)層之上對各種被管設(shè)備或被管子系統(tǒng)對象的管理。各管理服務(wù)和監(jiān)控臺間通過基于TAO的ORB總線進行信息交互,提高管理服務(wù)的可擴展性;另外該系統(tǒng)采用代理的方式屏蔽被管對象與綜合網(wǎng)管間接口的差異性,各代理與綜合網(wǎng)管服務(wù)間為CORBA接口,通過ORB總線進行信息交互,其系統(tǒng)結(jié)構(gòu)如圖5所示。

      圖5 基于TAO的綜合網(wǎng)管軟件結(jié)構(gòu)

      基于TAO的綜合網(wǎng)管系統(tǒng)所實現(xiàn)的功能主要包括:

      ①查詢各被管對象的配置參數(shù),進行綜合、顯示和存儲等處理;

      ②查詢各被管對象的故障信息,進行綜合、統(tǒng)計和分析等處理;

      ③查詢各被管對象的性能信息,進行綜合、分析、統(tǒng)計和存儲等處理;

      ④網(wǎng)管系統(tǒng)用戶創(chuàng)建及刪除、用戶組創(chuàng)建及刪除和用戶日志等維護管理;

      ⑤用戶權(quán)限和用戶認(rèn)證等系統(tǒng)安全操作管理。

      基于TAO提供的ORB平臺,綜合網(wǎng)絡(luò)管理系統(tǒng)采用模塊化結(jié)構(gòu),各管理服務(wù)以組件的方式掛接在ORB總線上,并根據(jù)應(yīng)用需要配置TAO的C++庫,提高了系統(tǒng)的可擴展性和軟件重用性;代理主要完成各被管對象的接口歸一化,并與綜合服務(wù)器交互管理信息,所用到的ORB服務(wù)很少,所以采用TAO的最簡配置完成CORBA接口的信息交互,節(jié)省資源占用,提高系統(tǒng)效率。

      3.2 應(yīng)用效果

      通過工程應(yīng)用實踐,驗證了基于TAO進行CORBA應(yīng)用軟件開發(fā)具有如下優(yōu)點:

      ①基于規(guī)范性的接口開發(fā)CORBA應(yīng)用軟件能夠提高與其他CORBA產(chǎn)品應(yīng)用軟件的互操作性,從而提高軟件的通用性和規(guī)范性;

      ②基于TAO開發(fā)的應(yīng)用程序具有與應(yīng)用平臺、物理地址和開發(fā)語言的無關(guān)性,提高了軟件的可移植性以及應(yīng)用軟件間互操作的透明性;

      ③TAO是開源的CORBA產(chǎn)品,提供了對C++的聯(lián)編,方便了C++應(yīng)用程序的開發(fā),提高了軟件的可配置性和可擴展性,降低了軟件開發(fā)成本;

      ④基于TAO開發(fā)的應(yīng)用軟件模塊化強,提高了軟件的靈活性和可重用性。

      4 結(jié)束語

      CORBA是一個規(guī)范,提供了一個允許在分布式和異構(gòu)型環(huán)境中應(yīng)用程序之間進行互操作的框架。TAO實現(xiàn)了CORBA規(guī)范,為應(yīng)用程序提供了透明的ORB操作平臺?;赥AO開發(fā)的應(yīng)用對象可以與其他CORBA規(guī)范的實現(xiàn)對象進行互操作,屏蔽了異構(gòu)環(huán)境下操作系統(tǒng)、開發(fā)語言和運行環(huán)境的種種差異性,另外TAO具有較強的可擴展性,提高了應(yīng)用系統(tǒng)的靈活性、適應(yīng)性和可重用性,提高了開發(fā)效率,降低了開發(fā)成本。

      [1]ITU-T Q.816 CORBA-based TMN services[S],2001.

      [2]MICHI H,STEVE V.基于C++CORBA高級編程[M].徐金梧,徐 科,呂志民,譯.北京:清華大學(xué)出版社,2000.

      猜你喜歡
      可擴展性服務(wù)端應(yīng)用程序
      刪除Win10中自帶的應(yīng)用程序
      電腦報(2019年12期)2019-09-10 05:08:20
      云存儲中基于相似性的客戶-服務(wù)端雙端數(shù)據(jù)去重方法
      新時期《移動Web服務(wù)端開發(fā)》課程教學(xué)改革的研究
      在Windows Server 2008上創(chuàng)建應(yīng)用
      恩智浦推出全新i.MX 8X 處理器,為工業(yè)應(yīng)用帶來更高的安全性、可靠性和可擴展性
      汽車零部件(2017年3期)2017-07-12 17:03:58
      電力監(jiān)控軟件的可擴展性設(shè)計
      自動化博覽(2017年2期)2017-06-05 11:40:39
      基于微軟技術(shù)的高可擴展性中小企業(yè)系統(tǒng)解決方案研究
      構(gòu)建高可擴展性的物流裝備管理系統(tǒng)
      關(guān)閉應(yīng)用程序更新提醒
      電腦迷(2012年15期)2012-04-29 17:09:47
      “鴿子”玩升級 黑你沒商量
      玛沁县| 苍梧县| 深州市| 霍林郭勒市| 蓬溪县| 盐源县| 尉犁县| 通化市| 姜堰市| 葫芦岛市| 长海县| 额尔古纳市| 光泽县| 九江市| 新郑市| 广安市| 平武县| 永州市| 广灵县| 石屏县| 象州县| 浠水县| 九江市| 延川县| 醴陵市| 得荣县| 望城县| 黔西| 玉溪市| 民权县| 辽阳县| 延安市| 乡宁县| 西昌市| 连南| 甘洛县| 且末县| 忻州市| 宜城市| 鄂温| 广饶县|