充分利用多媒体技术提高教学水平分布式对象技术在Web上的分析

2013-04-29 12:42刘杰
考试·综合 2013年6期
关键词:中间件构架调用

刘杰

中图分类号:G642 文献标识码:B 文章编号:1006-5962(2013)06-0046-02

1 前言

Internet的迅速發展使得web技术应用日益广泛,从而引发了一场Web技术的革命。Web已不再仅仅是超媒体信息的浏览工具,它正逐步成为人们事务处理的通用前端。在分布式环境中,异构性是一个重要的特点,一个典型的分布环境包括有大型主机、UNIX工作站和PC机,各种机器所采用的操作系统和网络通信协议也是不尽相同,在这样的异构环境下实现信息和软件资源的共享将十分困难,而分布式计算框架将为分布式应用软件的开发带来巨大的益处。

2 分布式对象技术

分布式对象技术主要是在分布式异构环境下建立应用系统框架和对象构件,在应用系统框架的支撑下,开发者可以将软件功能包装为更易管理和使用的对象,这些对象可以跨越不同的软硬件平台进行互操作。目前主要的分布式互操作标准有Microsoft的OLE/COM/DC-OM标准、Sun公司的Java RMI标准和OMG组织的CORBA标准。下面以CORBA为代表分析了分布式对象技术的体系结构,并对四种标准加以论述。

2.1 CORBA体系结构。

过去网络计算模式是从两层模式扩展到今天的三层模式,在三层结构中,客户端与数据库或其它资源管理器之间加进了一个中间层,即应用服务层。三层结构模型将应用的业务逻辑和用户界面分离,在保证客户端功能的前提下,为用户提供一个简洁的界面。

2.2 基于CORBA的三层模型。

中间件把应用程序与系统所依附软件的较低层细节和复杂性隔离开,使应用程序开发者只处理某种类型的单个API,而其他细节则由中间件处理。应用程序开发人员可以通过使用中间件工作在应用程序较高的层次上,而中间件提供了较低层的细节。基于CORBA的三层架构,客户方程序与服务方程序完全分离,客户将不再与服务方发生直接的联系,而仅需要与代理发生联系,客户与服务器方都可方便升级。提供"软件总线"机制,任何应用系统只要符合CORBA系统定义的接口规范,就可以方便地集成到CORBA系统中,这个接口规范独立于任何实现语言和环境。

3 CORBA标准的四个部分

3.1 接口与IDL语。

接口是CORBA系统中一个非常重要的概念,因为它代表了对象的服务能力,为客户提供了操作对象的唯一方法,简单的说,接口就是一组相关函数的集合,接口中每一个函数都给出了详细的说明,包括函数名、参数个数、参数类型、返回类型以及可能出现的异常。必须指出的是接口只定义了函数的原型,并没有给出具体的实现,这就留给开发者足够的灵活性来提供他们自己的函数实现。IDL用于说明CORBA服务对象完成的功能,但不能够利用IDL实现该功能。IDL是独立于其他编程语言的功能描述性语言,这从另外一个侧面说明了CORBA的语言环境独立性。

3.2 对象请求代理。

CORBA规范将那些相对固定的、单一的功能提取出来交由ORB内核实现以保证它的可靠性、高效性与可重用性。作为整个CORBA系统的基础,ORB内核使对象在分布式环境中透明地收发请求和响应,为分布环境中的对象屏蔽了网络、操作系统和实现语言的异构性,提供对象寻址、激活和通信的透明性,使得分布对象间的通信就如同在同一个地址空间一样。而实际的应用系统存在着各种不同的对象实现方式。因此,如果将现存的所有对象实现的解决方案都包含在ORB内核中,它必将非常庞大、冗余并且难以移植。为了确保ORB内核的高效与可移植性,一个称为对象适配器的中间层加入到ORB之间,其主要功能是定位服务对象,分析客户对象的请求,获取服务对象的功能接口,在客户与服务对象间建立通信连接。

3.3 动态调用接口和动态构架接口。

动态调用接口和动态构架接口提供了动态调用的方式和动态实现的方式。它们使得用户可以在事先不知道对象接口信息的情况下通过查询接口库或采取其它手段动态地获得对象接口信息,然后使用ORB核心接口中的DII动态调用方法构造客户请求并发送到对象实现,在对象实现方可以使用DSI的动态分发机制处理客户方的请求。与静态方式相比,动态方式提供了很大的灵活性,但是它的工作效率没有静态方式高。客户方支持静态和动态两种调用方式,服务器方也支持静态和动态两种实现方式,经过组合得到的四种方式都可能出现。

3.4 桩和构架。

桩可以看成是实际对象在客户进程中的映像,其中的接口必须是预先定义好的,因此它为客户提供了一种静态的调用方式。与桩相对应的构架为服务器提供了一种静态的实现方式。IDL编译器翻译描述对象接口的IDL文件,生成对应具体编程语言的IDL桩和IDL构架。桩负责将客户请求进行编码,发送到对象实现端,并对收到的结果进行解释,然后把结果或异常返回给客户。与此相反,构架对客户的请求进行解码,定位目标对象和请求执行的对象方法,激活该方法,然后把结果或异常信息编码返回给客户端。

4 CORBA与Web 相结合

在CORBA与Web的结合技术上,Java是CORBA结合Web的一个很好的切入点。CORBA规范中定义了IDL/Java的映射,CORBA产品提供商则根据规范开发了Java ORB。Java ORB不仅能开发分布式的Java应用,更重要的是它能够开发Web的CORBA应用。在这种结构中,CORBA客户方程序从Web服务器上下载执行,与应用服务器上的CORBA应用对象通过IIOP协议进行通讯,调用其指定的操作。CORBA应用对象首先对客户的请求进行认证和解释,根据客户请求的内容,或是直接访问资源层的数据库,或是与网络上的其它CORBA对象交互,共同完成客户请求。

5 结束语

应用Web技术迅速发展,它已不再仅仅是超媒体信息的浏览工具,以逐步成为人们进行事务处理的前端。由于分布对象的计算技术,特别是CORBA技术对于提高Web的网络计算能力有着无可比拟的巨大作用,而CORBA技术具有跨平台、跨语言的特性,这些特性为分布式应用的开发提供了强有力的而技术支持,具有广泛的应用基础, CORBA与Web技术迅速融合,使人们意识到web技术发展的巨大潜力 。

猜你喜欢
中间件构架调用
建筑安装造价控制核心要点构架
急诊PCI治疗急性心肌梗死的护理探索构架
核电项目物项调用管理的应用研究
LabWindows/CVI下基于ActiveX技术的Excel调用
高可靠全平台ICT超融合云构架的设计与实现
RFID中间件技术及其应用研究
略论意象间的主体构架
基于VanConnect中间件的设计与开发
基于系统调用的恶意软件检测技术研究
中间件在高速公路领域的应用