- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3基于分布对象技术的远程教育系统的实现方案
基于CORBA技术的计算机
远程教育系统研究与设计
The Research and Design of Computer Remote Teaching System Based on the Technology of CORBA
王 松 蒋苏蓉 冯 刚
华中师范大学计算机科学系 430079
当前基于Browser/Server模式下的计算机远程教育系统大多是通过网关接口CGI(Common Gateway Interface )CGI曾经是提供Web交互性的惟一方法,所有标准的Web服务器软件均支持CGI。在这种体系结构中,Web服务器通过CGI接口创建网关进程,并将用户请求传递给网关。应用网关处理CGI请求,并通过应用接口访问具体应用,然后将结果转换为HTML格式并回送给服务器。CGI的基础HTTP是一个低速、脆弱、无状态的协议,所以在利用CGI进行应用集成时存在一些问题。本文试图运用分布对象技术CORBA来解决目前基于Browser/Server的计算机远程教育系统低速、脆弱、无状态的问题,并进一步提出了CORBA在远程教育的应用中的不足之处及相应的解决方案。
关键词 CORBA OMA ORB 远程教育
1 引言
随着Internet的快速发展,计算机远程教育可谓风头正劲,提供了一种全新的教育途径。然而,当前基于Browser/Server模式下的计算机远程教育系统大多是通过网关接口CGI(Common Gateway Interface )CGI曾经是提供Web交互性的惟一方法,所有标准的Web服务器软件均支持CGI。在这种体系结构中,Web服务器通过CGI接口创建网关进程,并将用户请求传递给网关。应用网关处理CGI请求,并通过应用接口访问具体应用,然后将结果转换为HTML格式并回送给服务器。然而,CGI的基础HTTP是一个低速、脆弱、无状态的协议,所以在利用CGI进行应用集成时存在一些问题:
(1)Web服务器对每一个用户请求都必须创建一个单独的网关进程,并在接到通过进程管道发回的结果后终止该进程,其中包括进程创建与终止开销、进程间的数据拷贝开销以及进程间的切换开销等。如果一个HTML文件中包含了大量的数据库访问请求,那么这种CGI Web网关的性能将大大下将,并且服务器很快会达到饱和状态,难以支持更多的用户请求。
(2)CGI也无法适应。因此出现了专有服务器API形式,如Netscape 的NSAPI和Microsoft的ISAPI、NeXT的Web Objects框架以及Oracle的Web Server API等,但这种封闭的倾向导致了服务器Web标准的非一统一性。
因此,运用先进、成熟、开放的数据库技术和网络技术设计计算机远程教育系统势在必行。我们运用CORBA技术,提出了一种基于B/A/S模式下的计算机远程教育系统。
2 CORBA的技术特点
CORBA(Common Object Request Broker Architecture )OMG(Object Management Group )OMA(Object Management Architecture )
CORBA包括下列部件:
(1)ORB(Object Request Broker )(ORB engine)(IDL)ORB接口;
(5)工具库;接口库。
它的技术特点如下:
(1)应用程序间的统一接口
所谓软件总线是指CORBA系统定义了一组接口规范,任何应用程序、软件系统或工具只要具有与该接口规范相符合的接口定义,就能方便的集成到CORBA系统中。这个接口规范是独立于任何的实现语言和环境。CORBA规范支持服务对象的置透明性、实现透明性、执行状态透明性和通信机制透明性。只要按IDL描述语言对所提供的服务进行描述,客户和服务器之间就可以透明的交互运行。对应用程序模块实现“即插即用”,便于从整体管理的角度出发,对各独立系统进行装配和剪裁。
(2)客户方程序和服务器方程序的完全分离
CORBA引入了代理的概念,一个代理至少有三个方面的作用:完成对客户方提出的抽象服务请求的映射,自动发现和寻找服务器;自动设定路由,实现到服务器方的执行。这样以来客户将不再同服务器发生直接的连接,而仅仅需要同代理进行交互。客户与服务器之间就可以自由的修改和升级,客户方程序也可以自由的按照要求进行更改,而无须通知对方。
(3)分层的设计原则和实现方式
CORBA规范充分支持面向对象的技术,它仅仅定义了ORB中需要用到的基本对象,封装了相应的属性和方法。而面向应用的对象定义则可以在OMA的应用对象、领域对象或应用开发环境中逐步分层定义和实现。这样以来可以提高软件重用率,控制冗余度。
3 基于分布对象技术的远程教育系统的实现方案
基于
文档评论(0)