时间:2022-12-21 06:30:01 | 来源:信息时代
时间:2022-12-21 06:30:01 来源:信息时代
分布对象中间件CORBA : 遵从OMG(object management group)组织CORBA(common object request broker architecture)规范的分布对象中间件。分布对象中间件CORBA采用“软总线+软构件”的系统架构,以标准化的对象请求代理作为软总线连接,由CORBA对象作为软构件表达的分布式应用,并通过名字服务、事件服务、事务处理服务和安全服务等基础服务设施支持高可靠和高可伸缩系统的开发、运行、管理与集成。
20世纪90年代初,软件运行形态向网络模式急剧变迁,迫切需要具备异构环境下互操作能力的中间件的支撑。在这一背景下,OMG组织于1990年11月发表了《对象管理体系指南》,初步阐明了分布对象中间件CORBA的思想,并于1991年发布了CORBA 1.0规范。此后以CORBA规范的版本迭代为标志,分布对象中间件CORBA的发展大致经历了三个阶段:
(1)初始发展阶段(CORBA 1.0~CORBA 2.1):在这一阶段,互操作是CORBA规范发展的主题:通过制定接口定义语言(interface declaration language,IDL)标准及其到多种程序语言的映射规范实现了CORBA跨语言的互操作能力; 通过制定通用对象请求代理(object request broke,ORB)间的互操作协议(general Inter-ORB protocol,GIOP)实现了异构网络和不同ORB产品间互操作。然而CORBA对象模型中服务方代码的不可移植性,及在安全互操作、数据持久、消息服务等方面的局限性,限制了CORBA在企业计算环境下的应用。
(2)发展成熟阶段(CORBA 2.2~CORBA 2.6):1998年OMG发布的CORBA 2.2规范提出了基于可移植对象适配器(portable object adaptor,POA)的服务方对象模型,从而实现了服务方代码在不同CORBA产品间的可移植。此外,CORBA规范在对象模型和服务质量支持两个方面也得到了进一步发展,突出表现为对象传值机制、异步消息规范、容错CORBA、实时CORBA和嵌入CORBA规范等的制定。这一阶段涌现了大量商业上可用的、标准兼容的CORBA中间件,开始广泛应用于电信、金融、军事、医疗和电子商务等关键业务领域。
(3)技术跃升阶段(CORBA 3.X): 2002年OMG发布了CORBA 3.0规范族,其核心内容是正式采纳了CORBA构件模型(CORBA component model,CCM)标准,这个在1997年便开始酝酿历时5年制定的规范标志着CORBA中间件技术的一次重要提升。CORBA 3.0规范族由Java与Internet集成相关、服务质量及CORBA构件模型三大类规范组成。
目前比较知名的CORBA中间件包括IONA的Orbix、Borland的VisiBroker、DOC Group的TAO、Object Security的Mico及国内国防科技大学的StarBus等。
分布对象中间件CORBA基于OMG组织的对象管理体系结构(object management architecture,OMA)。OMA以平台无关的方式定义了分布对象及其交互机制。OMA包括对象模型和引用模型两个部分: 对象模型描述了分布对象本身,也即具有唯一标识、位置和实现细节对访问者透明的实体,且这些实体只能通过严格定义的接口访问;引用模型则说明了对象之间如何进行交互,按接口种类分组的对象通过对象请求代理(object request broker,ORB)链接在一起(见图1)。
图1 OMA引用模型
图2 ORB体系结构