看图学CORBA－CORBA基本原理介绍

| 网站首页 | 电子厨务 | 饮食信息 | 电子图库 | 厨客留言 | 520吃论坛 |

| 加入收藏
| 设为首页
| 联系站长

| 您现在的位置： 520吃 >> 电子厨务 >> 电脑基础 >> 网络技术 >> 文章正文

[组图]看图学CORBA－CORBA基本原理介绍 | ★★★ | 【字体：小 大】

看图学CORBA－CORBA基本原理介绍
作者：佚名 文章来源：本站原创 点击数： 更新时间：2006-9-9

对象请求代理

公用对象请求代理（调度）程序体系结构（Common Object Request Broker Architecture），缩写为 CORBA，是对象管理组织（Object Management Group）对应当今快速增长的软硬件的协同工作能力的要求而提出的方案。简而言之，CORBA允许应用程序和其他的应用程序通讯，而不论他们在什么地方或者由谁来设计。CORBA1.1由对象管理组织在1991年发布。他定义了接口定义语言（IDL）和应用编程接口（API），从而通过实现对象请求代理（ORB）来激活客户/服务器的交互。CORBA 2.0 于 1994 年的 12 月发布。他定义了如何跨越不同的 ORB 提供者而进行通讯。

ORB是一个中间件，他在对象间建立客户-服务器的关系。通过ORB，一个客户可以很简单地使用服务器对象的方法而不论服务器是在同一机器上还是通过一个网络访问。ORB截获调用然后负责找到一个对象实现这个请求，传递参数和方法，最后返回结果。客户不用知道对象在哪里，是什么语言实现的，他的操作系统以及其他和对象接口无关的东西。

在传统的客户/服务器程序中，开发者使用他们自己设计的或者公认的标准定义设备之间的协议。协议的定义依赖于实现的语言，网络的传输和其他许许多多因素。ORB 将这个过程简单化。使用ORB，协议定义是通过应用接口，而该接口是接口定义语言（IDL）的一个实现，他和使用的编程语言无关的。并且ORB提供了很大的灵活性。他让程序员选择最适当的操作系统，运行环境和设计语言来建设系统中每个组件。更重要的是，他允许集成已经存在的组件。

CORBA是在面向对象标准化和互操作性道路上的一个信号。通过CORBA，用户不必要知道软硬件的平台和他们处在企业网的什么地方就可以操作。

ORB 结构

通过 ORB 发送请求

上面的图形说明的是客户端发送一个请求到对象的实现。客户端是希望对某对象执行操作的实体。对象的实现是一片代码和数据来实际实现对象。ORB负责下面的必要的机制：对该请求找到对象的实现，让对象的实现准备好接受请求，和请求交换数据。客户端的接口完全独立于对象的位置，其实现的语言和其他不影响对象接口的东西。

ORB 接口的结构

上面的图形显示的是一个独立的对象请求代理（ORB）的结构。ORB 的接口是灰色的矩形。箭头说明 ORB 的调用关系。

为了提出一个请求，客户端可以使用动态调用接口（Dynamic Invocation Interface）（和目标对象的接口独立）或者一个 OMG 的 IDL 占位程序（具体的占位程序依赖于目标对象的接口）。客户端也可以直接和 ORB 在某些地方交互。

对象的实现通过 OMG 的 IDL 产生的骨架或者是一个动态骨架的调用来接受请求。对象的实现可能在处理请求或其他的时候调用 ORB。

对象接口定义的定义可以有下面两种方式。接口可以通过接口定义语言静态的定义，这叫做 OMG 的 IDL。该语言按照可以进行的操作和该操作的参数定义对象类型。或者（也可以作为补充），接口可以加入到 Interface Repository service。该服务描述了该接口作为一个对象的组件，并允许运行时访问这些组件。在任何 ORB 实现中，IDL 和 Interface Repository 有相同的表达能力。

客户端使用占位程序或者动态调用接口

客户端通过访问对象的对象引用和了解对象的类型及要求执行的操作来发布一个请求。客户调用占位程序例程来请求或者动态构造请求。

无论动态还是占位程序的接口都可以相同实现。接收方不可能知道请求是如何发布的。

对象的实现接受请求

ORB 向对象实现定位适当的代码，传递参数，传输控制。这一切都通过 IDL 骨架或者动态骨架。骨架对于不同的接口和对象适配器是不同的。在执行该请求的时候，对象的实现可能由 ORB 通过对象适配器来获得一定的服务。当请求完成，控制和输出值返回给客户。

对象的实现可能会选择使用的对象适配器。该决定基于对象的实现要求的服务。

接口和 Implementation Repositories

上图说明的是接口和实现信息如何让客户和对象实现访问的。接口用OMG的IDL和/或InterfaceRepository定义。该定义用于产生客户占位程序和对象的实现的骨架。对象的实现的信息在安装时就提供好了，储存在 Implementation Repository 中以便请求发布的时候使用。

最新热点

最新推荐

相关文章

轻松解决局域网内XP与98互访
域名系统
什么是浏览器?
网络命令一览表
路由器基础知识
网络基础知识
网管十招
网络经典命令行6
网络经典命令行5
网络经典命令行4

文章录入：admin 责任编辑：admin

- 上一篇文章： 轻松解决局域网内XP与98互访问题
- 下一篇文章： 没有了

【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】

网友评论：（只显示最新10条。评论内容只代表网友观点，与本站立场无关！）

服务热线:(0)15972979128 客服ＱＱ：２１４８８１３９ Email:summy@520chi.com

设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告
Copyright (C) 2006 520chi.com, All Rights Reserved 版权所有 520吃网络 鄂ICP证B2-20060003号 如有意见请与我们联系 Powered by 520吃网络平台 免责申明：520吃网络(http://520chi.com)上的所有提供下载的软件和资源均来源于网络，为软件或程序作者提供和网友推荐收集整理而来，仅供学习和研究使用。如有侵犯你的版权，请立即联系我们，本站将在3个工作日内删除。