999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

CORBA分布式技術在基于Web的網絡教學平臺中的應用

2008-12-31 00:00:00黎辛曉
電腦知識與技術 2008年36期

摘要:在分析分布式體系結構及其特點的基礎上,利用Delphi對CORBA技術及Web應用系統開發的支持,將CORBA技術應用于網絡教學平臺的開發,實現了分布式多層Web應用系統,提高系統的穩定性、延展性和執行效率,解決了大型Web應用系統中存在的負載瓶頸問題。

關鍵詞:CORBA;Delphi;分布式Web應用系統

中圖分類號:G434文獻標識碼:A文章編號:1009-3044(2008)36-3038-03

Applying CORBA Distributed Technique to the Network Teaching System Based on Web

LI Xin-xiao

(Department of Electronic and Computer Science, Guilin University of Technology, Guilin 541004, China)

Abstract: Based on the analysis of the distributed architecture and its characteristic, this paper presents the design and development of a network teaching web application system using CORBA technique which is supported by Delphi. By adopting distributed architecture, we can improve the stability, tractility and processing capability of the system, and also can solve the burden bottleneck problem in large web application systems.

Key words: CORBA; Delphi; distributed web application system

1 引言

隨著網絡技術的發展及計算機的普及應用,網絡教學作為一種可以突破時間和地域限制的教學手段,對傳統教學起到了較好的輔助教學效果,發揮了越來越重要的作用。在國內外,很多學校都建立了校園網,并開發遠程教學平臺,為師生提供教學資源發布、教學點播、交流互動、在線測試等服務。隨著寬帶網絡的應用,對于運行在校園網之上的教學平臺,網絡速度已經不是影響教學平臺使用的關鍵因素。隨著網絡教學平臺提供服務的多樣性、豐富性、功能復雜性的提高以及教學平臺本身具有的終端用戶數量龐大等特征,特別是教學系統向智能化發展后,增加了智能組卷、在線測試、測評結果分析、試卷質量分析、教案生成等應用服務,這些應用服務的實現涉及的數據量大、算法復雜,執行起來比較耗費資源。因而,應用服務器的性能與負載能力成了網絡教學平臺應用的瓶頸,當同時訪問系統的用戶量增加到一定規模,應用服務器超負載運行,教學系統的執行效率就開始明顯的下降,甚至導致系統崩潰。所以需要使用更具延展性的分布式結構來克服服務器的瓶頸問題,將應用均衡分布在多臺服務器上,實現負載均衡,提高系統的可靠性和保障系統的執行效率。

2 CORBA分布式技術概述

目前分布式體系結構使用的核心技術主要有三種:Microsoft 的COM/DCOM 技術、SUN 的EJB 技術和OMG的CORBA(Common Object Request Broker Architecture)。這三種分布式技術各有優缺點,但總體而言,在集成性、互操作性、開放性和成熟度方面,CORBA較優于其他兩者。

CORBA是由OMG提出的應用軟件體系結構和對象技術規范,其核心是一套標準的語言、接口和協議,以支持異構分布應用程序間的互操作性及獨立于平臺和編程語言的對象重用。CORBA體系主要由ORB(Object Request Broker)、對象服務、公共設施、領域接口及應用對象等組成。其主要特點是:1) 引入中間件作為事務代理;2) 實現客戶與服務對象的完全分開;3) 提供總線機制,使得軟件只要符合接口規范的定義,均能夠集成到分布式系統中;4) 采用面向對象的軟件實現方法開發應用[1]。

Delphi支持CORBA標準,并為分布式應用程序開發提供了優良的環境,其Object Pascal的CORBA IDL 編譯器還可以讓Delphi的客戶端應用程序和UNIX/Linux的CORBA服務器溝通[2]。Delphi提供了符合CORBA規范的產品VisiBroker,其實現了CORBA中的ORB核心技術,它包含了一些非常重要的應用程序,其中OsAgent提供CORBA對象搜索的功能;OAD提供了注冊CORBA對象及自動地維護所有注冊CORBA類別信息的功能;IREP維護接口庫從而可以使用DLL的方式調用CORBA對象。這些應用程序提供了基本的CORBA支持機制,簡化了CORBA多層分布式應用系統的開發[3]。

3 CORBA在網絡教學平臺中的應用

3.1 系統設計概述

運行在校園網上的網絡教學平臺采用支持CORBA分布式體系結構的Delphi工具開發。系統使用面向對象的方法進行分析和建模,利用Delphi提供的WebBroker和InternetExpress組件對網頁動態功能和數據更新的支持,開發出Web應用模式的分布式網絡教學平臺系統。并將CORBA技術與多層架構相結合,使用CORBA對象封裝業務邏輯及數據處理,分割表示邏輯、企業邏輯和數據邏輯,實現了客戶端Web應用程序、應用程序服務器、數據庫服務器的多層分布式體系結構。系統實現了教學資源發布、教學點播、知識庫維護、教學交流、在線測試等一系列教學輔助功能。這里以教學點播子系統中的在線測試模塊的實現過程來說明采用CORBA技術開發分布式Web應用系統的方法。

3.2 系統結構

基于Web的分布式網絡教學平臺系統結構如圖1所示。

圖1 系統結構圖

圖2 用戶選擇測試知識點請求試卷生成頁面

圖3 在線測試模塊組件圖

數據庫服務器:使用SQL SERVER 2005構建,主要接受應用服務器的數據查詢和數據操作請求,并將數據查詢或操作結果返回給應用服務器。

CORBA應用服務器:主要實現系統中的各種業務邏輯,將組卷算法、知識搜索、試卷評分及一些數據查詢、數據操作的公共數據處理封裝成企業對象,在應用服務器上發布,由客戶端應用程序即Web應用程序進行調用。

客戶端應用程序(Web服務器):主要接受客戶機的HTTP請求,并根據請求實現Web頁面上的動態的數據顯示,調用應用服務器的CORBA對象完成業務處理,對操作流程進行控制和對錯誤信息進行判別等。

客戶機:即用戶使用瀏覽器,對Web服務器的頁面進行瀏覽或輸入數據,使用系統功能。

整個系統的運行處理過程為:由用戶在遠程從Web頁面上發出請求,觸發客戶端Web應用程序的Action事件,Action先在應用程序客戶端進行必要的數據處理,然后根據用戶的具體請求,通過Smart Agent與服務器端對象通訊,把處理的要求和相應的數據提交到服務器端,服務器端完成用戶請求后,把處理的結果反饋回Web服務器,最后,再把Web應用程序處理的結果頁面回傳給客戶機。

3.3 CORBA應用服務器開發

創建Application應用程序,加入CORBA數據模塊,在數據模塊中加入TDatabase 控件,用于鏈接SQL Server中的網絡教學平臺所用的數據庫,加入所需的TQuery和TCommand等DataSet控件,用于進行數據庫查詢及獲取查詢結果記錄集,或執行數據的添加、刪除和修改操作。加入TDataSetProvider 控件,設置DataSet屬性為相應的DataSet控件。

在應用程序服務器中再創建其他的CORBA對象,并建立方法,編寫方法代碼,將組卷算法、知識搜索、試卷評分及一些數據處理等代碼分別實現為各對象的方法,這樣就利用CORBA對象實現了業務邏輯的封裝。在編寫企業對象時,可以先用向導創建CORBA對象,產生對象的骨架程序代碼后,再給對象提供客戶端調用的方法及可以存取的屬性。創建CORBA對象的方法為:在菜單中選“View”中的“Type Library”,選擇“New”的“Method”,給方法命名,系統便創建了一個新方法并產生該方法的框架代碼,在此基礎上編寫該方法的程序代碼,實現方法的功能。如在本系統中,創建了OnlineTest CORBA對象,實現了findQuest(試題查找),giveMark(評分),createQuest(生成試題),createPaper(組卷)等方法,供客戶端應用程序調用。

3.4 客戶端應用程序(Web應用程序)開發

新建一個Web應用程序(Web Server Application),在該Web數據模塊中加入TCORBAConnection控件,設置RespositoryId 屬性值為以上所建立的CORBA服務器中的CORBA對象,用于連接CORBA 應用程序服務器。加入TClientDataSet,其RomoteServer 屬性的值為TCORBAConnection 組件;其 ProviderName 屬性的值為應用程序服務器中TDataSetProvider 組件,用于從服務器獲取數據結果。

對于Web頁面的開發,可利用Delphi對Web和電子商務的開發支持,使用InternetExpress提供的TMIDASPageProducer 組件獲取數據信息或程序處理結果,將它們顯示在該組件指定的頁面上,也可從TXMLBroker組件取得以XML封裝的數據,產生以XML格式封裝的頁面內容。通過使用TMIDASPageProducer 等InternetExpress組件,集成用DREAMWEAVER等工具設計的樣板HTML頁面,以及內嵌的JavaScript腳本語言,進而匯整成一個有效的動態Web頁面。圖2為用戶選擇測試知識點進行試卷生成請求的頁面。

Web應用程序接受用戶請求調用服務器的CORBA對象服務,主要是通過創建Action來實現的。用戶通過Web頁面發送請求后,應用程序相應的action事件被觸發,action根據用戶要求,調用服務器端的CORBA對象的方法進行業務處理。以下為應用程序根據用戶請求,調用了服務器的OnlineTest CORBA對象的createpaper方法實現試卷生成的action事件代碼。

procedure TWebModule1.WebModule1cs_zhscsjAction(Sender: TObject;

Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);

var

st_html: OleVariant;

begin

DYCS:=TOnlineTestCorbaFactory.CreateInstance('');//建立一個CORBA對象。

textlist:=Tstringlist.create; // 用于存放返回HTML頁面的字符串

st_html:='';

DYCS.createpaper(request.contentfields.values['sjbh'], st_html); //調用OnlineTest CORBA對象的createpaper方法實現了試卷生成功能,在此調用該方法生成選中的試卷,返回的試卷的HTML字符串

textlist.add(st_html);

mppcy.htmlfile:=sstr+'jxdb\\zhcs\tsj.htm';

response.content:=mppcy.content;

end;

在線測試模塊的組件圖如圖3所示。

ServerModule.pas 提供的是Corba_server的數據模塊,xscy_method.pas實現的是OnlineTest CORBA對象,它們都是CORBA對象的pas源代碼文件;Corba_server.exe是應用程序服務器,包括了上述兩個pas文件,即兩個CORBA對象。Corba_server.idl和Corba_server_TLB是實現CORBA連接的基礎文件,分別由系統自動生成。client_pro.pas是實現瀏覽器與應用程序接口的源代碼文件,client_pro.exe是其編譯之后的執行程序。

4 結束語

利用Delphi對CORBA分布式技術及Web應用系統開發的支持,結合Delphi提供的強大的數據庫應用開發工具,可以有效的開發出完備的基于Web的多層分布式系統,將表示邏輯、業務邏輯及數據邏輯進行分割,并可將業務邏輯封裝成企業對象,利用負載平衡策略,在多臺應用服務器上實現業務處理的負載平衡。隨著應用程序業務邏輯復雜性的提高及需求的擴展,利用多層分布式技術可以增強系統的靈活性和開放性,提高系統運行效率,較好的解決應用服務器負載瓶頸問題。

參考文獻:

[1] 飛思科技研究中心.Delphi 7組件與分布式應用開發[M].北京:電子工業出版社,2003.

[2] 李維.Delphi分布式多層應用系統篇[M].北京:機械工業出版社,2000.

[3] 黃汝維,陳寧江,蘇德富.Delphi中三層結構與CORBA的應用研究[J].計算機應用研究,2002(8):94-96.

主站蜘蛛池模板: 91福利免费| 日韩免费毛片| 久久香蕉国产线看观看精品蕉| 在线欧美a| 国产美女在线观看| 欧美不卡在线视频| 国产成人禁片在线观看| 天堂成人在线| 国产综合欧美| 欧洲日本亚洲中文字幕| 日韩欧美中文字幕一本| 欧美综合一区二区三区| 亚洲香蕉伊综合在人在线| 亚洲欧洲天堂色AV| 久久精品最新免费国产成人| 亚洲精品无码av中文字幕| 国产精品自拍露脸视频| 国产91小视频| 亚洲女同一区二区| 久久亚洲AⅤ无码精品午夜麻豆| 久久综合五月| 亚洲a级在线观看| 国产九九精品视频| 久久久久国色AV免费观看性色| 亚洲黄色视频在线观看一区| 国产乱子伦一区二区=| 久久综合婷婷| 欧美性爱精品一区二区三区| 国产高清国内精品福利| 午夜视频免费试看| 国产精品冒白浆免费视频| 内射人妻无码色AV天堂| 丝袜国产一区| 精品天海翼一区二区| 日韩无码视频播放| 亚洲天堂网视频| 99这里只有精品6| 激情在线网| 五月天在线网站| 亚洲人在线| 国产自在线拍| 她的性爱视频| 国产人人乐人人爱| 97se亚洲| 内射人妻无套中出无码| 99手机在线视频| 欧美α片免费观看| 国产h视频免费观看| 99精品视频九九精品| 久久性视频| 超清无码一区二区三区| 亚洲黄色激情网站| 精品无码视频在线观看| 在线看片中文字幕| 国产精品成人第一区| 欧美日本在线观看| 免费无遮挡AV| 日韩毛片免费| 久久青青草原亚洲av无码| 99视频免费观看| 国内精品视频在线| 久久综合色88| 久久青草热| 这里只有精品国产| 国产啪在线91| 免费一看一级毛片| 国产网站免费看| 青青青国产视频手机| 国产日本欧美在线观看| 欧美在线综合视频| 性激烈欧美三级在线播放| 国产精品精品视频| 成人午夜网址| 国产黄色片在线看| 国产无套粉嫩白浆| av在线无码浏览| 欧美日韩亚洲国产| 国产麻豆精品在线观看| 国产成人免费观看在线视频| 国产国语一级毛片| 91免费在线看| 免费人成黄页在线观看国产|