分布式对象技术及其在Web上的应用
夏仕林,李海峰, 吴介一
东南大学 CIMS中心,南京 210096
linshixia@263.net
摘要:本文首先论述了分布式对象技术的重要概念和基本原理,然后分析了CORBA和Web相结合所带来的技术优势。最后,结合实例,介绍了开发基于CORBA/Web技术的应用系统的步骤和特点。
关键词:Web 分布式对象 CORBA IDL PDMS
1 引言
Internet/Intranet的飞速发展使得World Wide Web应用日益广泛,从而引发了一场Web技术的革命。目前,各种新型的Web应用,如电子出版,电子商务等层出不穷,许多应用系统也纷纷集成了Web浏览器和服务器,Web技术正以日新月异的速度变化着。Web已不再仅仅是超媒体信息的浏览工具,它正逐步成为人们事务处理的通用前端。在分布式环境中,异构性是一个十分明显的特点,一个典型的分布环境包括有大型主机、UNIX工作站和PC机,各种机器所采用的操作系统和网络通信协议也是千差万别。在这样的异构环境下实现信息和软件资源的共享将十分困难,而一个健壮的分布式计算框架将为分布式应用软件的开发带来巨大的好处。由于分布式对象技术,特别是CORBA技术对于提高Web的网络计算能力有着无可比拟的巨大作用,它已开始进入Web领域并投入应用。
2 分布式对象技术
分布式对象技术主要是在分布式异构环境下建立应用系统框架和对象构件,在应用系统框架的支撑下,开发者可以将软件功能包装为更易管理和使用的对象,这些对象可以跨越不同的软硬件平台进行互操作。目前主要的分布式互操作标准有Microsoft的OLE/COM/DCOM标准、Sun公司的Java RMI标准和OMG组织的CORBA标准。下面以CORBA为代表论述分布式对象技术的体系结构,并对三种标准加以比较。
2.1 CORBA体系结构
CORBA的体系结构如图1所示。在该体系结构中主要描述了以下内容:
(1) 接口与IDL语言
接口是CORBA系统中一个非常重要的概念,因为它代表了对象的服务能力,为客户提供了操作对象的唯一方法。简单的说,接口就是一组相关函数的集合,接口中每一个函数都给出了详细的说明,包括函数名、参数个数、参数类型、返回类型以及可能抛出的异常。必须指出的是接口只定义了函数的原型,并没有给出具体的实现,这就留给开发者足够的灵活性来提供他们自己的函数实现。接口是通过一种中性的接口描述语言( IDL,Interface Description Language)来定义的。虽然IDL语言只提供了被ORB操作的对象的概念框架,但是ORB在运行时并不需要IDL的源代码。只要桩例程或运行状态下接口库中的等价信息是可用的,ORB就能通过特定的方式完成其功能。《分布式对象技术及其在Web上的应用》