CORBA服务
CORBA规范综述

CORBA规范综述张亚红宋凯华东计算技术研究所二OOO年三月目录引言 (3)第一章CORBA 体系结构 (3)第1.01节CORBA规范概述 (3)第1.02节对象管理架构(OMA) (4)第1.03节CORBA详细结构图 (5)第二章对象服务(CORBAServices)的具体内容 (7)第2.01节名字服务 (7)第2.02节生存周期服务 (8)第2.03节事件服务 (10)第2.04节交易黄页服务 (12)第2.05节事务服务 (13)第2.06节并发控制服务 (15)第2.07节安全服务 (15)第2.08节持久性服务 (16)第2.09节流转换服务 (18)第2.10节查询服务 (19)第2.11节组服务 (19)第2.12节对象关系服务 (19)第2.13节时间服务 (20)第2.14节准许服务 (21)第2.15节属性服务 (21)第三章CORBA相关产品及CORBA的未来 (22)第3.01节CORBA相关产品 (22)StarBus的ORB核心机制原理 (23)第3.02节CORBA的未来 (24)第四章程序开发一般过程 (25)第4.01节程序开发一般过程 (25)第4.02节用Starbus开发分布应用步骤 (27)参考文献 (27)引言对象管理组织(OMG)提出的CORBA规范为实现分布式环境下的软件重用、移植和互操作提供了一套前景光明的规范,并为开放式系统的研究提供了一个很好的系统实现框架。
介绍CORBA的文章已有很多,本文试图能够从结构上简而全的对它进行综述,并简单介绍了相关产品和CORBA环境下的程序开发过程。
第一章CORBA 体系结构第1.01节CORBA规范概述CORBA (Common Object Request Broker Architecture)公共对象请求代理架构,是国际对象管理组织(Object Management Group OMG)制定的分布对象计算规范,目前最新版本为3.0(于1999年11月发布),目的是促进在分布、异构环境中基于对象的软件的可重用性、可移植性与互操作性,实现多厂商网络环境中应用的互操作;OMG组织是一个超过750名成员的国际组织,它包括信息系统厂商,软件开发者和用户。
corba用法

CORBA是由OMG组织制订的一种标准的面向对象应用程序体系规范,使用IDL(接口定义语言)刻画出对象将呈现出来的接口,并且规定了从IDL到特定程序语言如C++或Java实现的映射。
其使用一种接口定义语言来刻画物件将呈现出来的接口,又规定了从IDL到特定程序语言如C++或Java实现的映射。
CORBA体系结构的中心部分是对象请求代理程序(Object Request Broker, ORB),它作为一个“软件总线”来连接网络上的不同对象。
在客户端,ORB提供一个发送操作调用的接口;而在服务器端,ORB提供一个将操作调用传输到服务器的API。
ORB的任务是定位一个合适的服务器,并且通过一个对象适配器(Object Adapter, OA)将操作调用传送给服务器。
OA的目的是:给框架发送方法,调用并且支持服务器对象的生命周期(例如,对象的建立和删除)。
在CORBA体系结构中,处理分布式处理环境(DCE)中硬件和软件系统的互连问题,实现整个系统上端到端的可预测性。
处理器资源管理是将网络任务的优先级映射到实时操作系统的优先级队列中,有两种映射方法:一种是将网络ORB请求映射到整个实时操作系统的优先级范围;另一种是映射到本地实时操作系统优先级的一个子集上。
优先级继承与传播:在运行过程中,进程会创建子进程,不同的进程之间相互调用,如果不支持优先级继承和传播,则无法保证正确的优
先级关系。
被调用进程的优先级必须大于或等于调用进程的优先级。
因此在调用时,必须动态改变被调用进程的优先级。
存储管理是通过进程池来实现的。
建议咨询专业人士获取具体详细信息。
CORBA技术简介

研究背景
– 对象之间的相互关联:关系服务和事件服务 – 对象之间的协同控制:并发服务和计时服务 – 典型应用系统的构作:事务处理等 – 对象的生存问题:生命期服务和持久化服务 – 领域级应用系统构作:公共设施
研究背景
解决途径
– 1989年成立国际性行业协会OMG现已拥有 1989年成立国际性行业协会OMG现已拥有 700个会员,包括IBM、APPLE,HP、SUN等; 700个会员,包括IBM、APPLE,HP、SUN等; 其目标是制定标准; – 1991年,OMG推出CORBA1.1的ORB机制; 1991年,OMG推出CORBA1.1的ORB机制; – 1993年,推出了CORBA1.2规范; 1993年,推出了CORBA1.2规范; – 1995年,推出了CORBA2.0规范; 1995年,推出了CORBA2.0规范; – 组织方式和技术途径结合:体现了技术可用 的一种有效途径。参与者就是使用者。
基本过程
– 用IDL书写服务器接口 IDL书写服务器接口 – 用IDL编译器产生native language interface, IDL编译器产生native server stub(翻译功能)和client stub(可能写入 stub(翻译功能) stub(可能写入 接口库) 接口库) – 基于native language interface, 提供相应的服 基于native 务器实现 – 编译服务器程序并与Server Stub连接 编译服务器程序并与Server Stub连接
主要内容-接口语言
一个IDL例-图7.3 一个IDL例-图7.3
主要内容-接口语言
图7.4
主要内容-接口语言
接口存储库
– 它是一个在线的对象定义数据库,它由接口 定义语言编译器或储存库的写入功能产生; – 储存库的主要作用之一是支持动态调用,并 对其它工具提供必要的支持; – CORBA用一组类规定了储存库的组织和检索 CORBA用一组类规定了储存库的组织和检索 方式;
CORBA概述

CORBA基本概念
CORBA
Facilities(CORBA工厂):位于CORBA
Services之上,定义了更高层次的分布式服务与框 架。如:打印、电子邮件、文档管理等。
CORBA体系结构
CORBA在基于网络的分布式应用环境下实现应用
软件的集成,使得面向对象的软件在分布、异构环 境下实现可重用、可移植和互操作。
将被分布对象的消息。
CORBA基本概念
CORBA
务。
services(CORBA服务):在ORB级别之
上,定义了大多数分布式企业对象可利用的公共服
命名服务、交易对象服务、关系服务、生命周期服务、外表化服
务、查询服务、事件服务、许可服务、时间服务、对象事务服务、并发 服务、安全服务、收集服务、特性服务、持久对象服务、通知服务、增 强时间视图等。
义语言:定义客户和服务器之间的静态接口,通过 编译器生成客户存根、服务器框架,以及根据支持
的语言映射,自动生成来自一个CORBA IDL的代码。
目前支持的语言映射包括:Java, C++等。
CORBA基本概念
SII(Static SSI(Static
Invocation Interface)静态调用
CORBA体系结构
CORBA特点
CORBA的核心是一套标准的语言、接口和协议, 以支持异构分布应用程序间的互操作性及独立于平 台和编程语言的对象重用。 引入中间件(Middleware)作为事务代理,完 成客户机(Client)向服务对象方(Server)提出 的业务请求;
CORBA体系结构
CORBA特点
编译IDL文件生成,其功能是负责发送一个操作调 用给能实现此操作的服务。
CORBA入门

1.CORBA什么是?
CORBA是Common Object Broker Architecture简称,即公共对象请 求代理体系。
2. COBRA的发展
1991年CORBA的第一个版本问世,可是他只是规范了如何再C程 序中使用它。 随着OMG(Object Management Group,对象管理组)公布RFP(Request for proposals,征求提案)作为将CORBA映射到C++的标准,1994年 秋天才完成了标准化。 最初为CORBA2.0。在CORBA2.0种提供了IIOP(Internet Inter-ORB Protocol)。随后的2.1、2.2、2.3作了部分修改
应用对象 公共设施 ORB
对象服务
第2章 CORBA概述
1.公共设施 (1) 横向设施:是指在通用领域内定义的对象 (2) 纵向设施:是指在专用领域内定义的对象 2.对象服务 (1) 命名服务 (2) 事件服务 (3) 事件处理服务 (4) 交易服务 (5) 生命周期服务 (6) 安全服务 (7) 通知服务 3. 对象请求代理(ORB) 它是CORBA的基础,是在分布式环境下,CORBA应用所使用的基 于对象模型的软件总线。
第2章 CORBA概述
静态调用和动态调用的区别: 国王就是客户,哲学家就是存根,国王询问哲学家就是 客户调用存根,名片就是对象引用,电话就是ORB核 心,哲学界伙伴就是静态框架,先知就是对象实现。 秘书就是DII,名片薄就是接口库。
国王 先知
6 哲学家
1
2
3 哲学家伙伴
4
5
第2章 CORBA概述
corba协议-概述说明以及解释

corba协议-概述说明以及解释1.引言1.1 概述Corba(Common Object Request Broker Architecture)是一种面向对象的分布式计算的标准化协议。
它定义了一套标准化的通信协议,使得不同的对象能够在网络上进行通信和交互。
Corba协议通过对象请求代理(ORB)实现对象之间的通信,使得对象在不同的计算机上可以相互调用,实现分布式计算。
该协议被广泛应用于企业级软件系统中,能够提高系统的可扩展性、可维护性和灵活性,为分布式系统的开发提供了良好的支持。
在本文中,我们将介绍Corba协议的基本原理、特点和应用领域,以便更好地理解和使用这一重要的分布式计算协议。
1.2文章结构1.2 文章结构本文将首先介绍Corba协议的概念和背景,包括其起源、发展历程和基本原理。
接着将详细探讨Corba协议的特点,包括其跨平台、语言中立和分布式的优势。
然后将深入分析Corba协议在各个应用领域的具体应用,包括企业级系统、网络通信和物联网等方面。
最后对Corba协议的发展前景进行展望,探讨其在未来的发展趋势和潜在挑战。
通过本文的阐述,读者将能够全面了解Corba协议的重要性和应用领域,以及对其发展方向有更深入的认识。
1.3 目的本文的主要目的是介绍和探讨Corba(通用对象请求代理结构)协议,旨在帮助读者了解该协议的基本概念、特点和应用领域。
通过对Corba协议的介绍,读者可以深入了解面向对象技术在分布式系统中的应用,以及Corba协议在不同领域中的实际应用情况。
同时,本文也将分析Corba 协议的优势和局限性,以及未来在分布式计算领域的发展趋势。
通过本文的阐述,读者将能够更好地理解和应用Corba协议,为其在实际项目中的应用提供参考和指导。
2.正文2.1 Corba协议介绍CORBA(Common Object Request Broker Architecture)是一种用于分布式系统中对象通信的协议。
corba介绍(java语言)

1.C ORBA 简介CORBA(Common Object Request Broker Architecture)是为了实现分布式计算而引入的。
为了说明CORBA在分布计算上有何特点,我们从它与其它几种分布计算技术的比较中进行说明。
与过去的面向过程的RPC(Remote Procedure Call)不同,CORBA是基于面向对象技术的,它能解决远程对象之间的互操作问题。
MicroSoft 的DCOM (Distributed Component Object Model)也是解决这一问题的, 但它基于Windows操作系统,尽管到本书编写时,DCOM已有在其他操作系统如Sun Solaris, Digital Unix, IBM MVS 上的实现,但毫无疑问,只有在微软的操作系统上才会实现得更好。
而只有CORBA是真正跨平台的,平台独立性正是CORBA的初衷之一。
另一种做到平台无关性的技术是Java RMI(Remote Method Invocation),但它只能用JAVA实现。
CORBA与此不同,它通过一种叫IDL(Interface Definition Language)的接口定义语言,能做到语言无关,也就是说,任何语言都能制作CORBA组件,而CORBA组件能在任何语言下使用。
因此,可以这样理解CORBA:CORBA一种异构平台下的语言无关的对象互操作模型。
1.1 CORBA体系结构CORBA的体系结构如下:图1.1 CORBA体系结构CORBA上的服务用IDL描述,IDL将被映射为某种程序设计语言如C++或Java,并且分成两分,在客户方叫IDL Stub(桩), 在服务器方叫IDL Skeleton(骨架)。
两者可以采用不同的语言。
服务器方在Skeleton的基础上编写对象实现(Object Implementation),而客户方要访问服务器对象上的方法,则要通过客户桩。
CORBA概述

持的特定传输之上。
CORBA基本概念
IIOP(Internet
Inter-ORB Protocol)因特网
ORB之间的协议:IIOP把GIOP消息数据映射为 TCP/IP连接行为和输入/输出流读/写。OMG 在最广
泛使用的通信传输平台 -- TCP/IP 上标准化 GIOP。
GIOP 加 TCP/IP 等于 IIOP。
接口:位于客户端,客户与ORB之间的静态接口。 Skeleton Interface)静态框架接
口:位于服务器端,ORB与服务器之间的静态接口。
CORBA基本概念
stub
存根:位于客户端,由IDL编译器编译IDL
文件生成,其功能类似一个客户代理。
skeleton
框架:位于服务器端,由IDL编译器
CORBA
CORBA
CORBA(Common Object Request Broker Architecture:通用对象请求代理结构)是一个分 布式的面向对象应用架构规范,它是由OMG研究组 在80年代末提出,在90年代逐步完善,形成现在被
软件行业普遍认可的标准CORBA/IIOP 规范,目前
CORBA基本概念
DII(Dynamic DSI(Dynamic
Invocation Interface)动态调用
接口:位于客户端,发送客户端的调用请求。 Skeleton Interface)动态框架接
口,位于服务器端,传送客户端的调用请求。
CORBA基本概念
IDL(Interface
Definition Language)接口定
3.0版。
CORBA
CORBA
与RPC(Remote Procedure Call)不同,CORBA 是基于面向对象技术的,它能解决远程对象之间的 互操作问题。 DCOM (Distributed Component Object Model) 和Java RMI(Remote Method Invocation ) 也解 决这一问题的, 但有不足。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CORBA服务
CORBA (Common Object Request Broker Architecture)是一种分
布式计算平台,旨在使不同的计算机系统能够相互通信和交互。
CORBA服务是由CORBA技术提供的一种机制,用于简化分
布式系统中的通信和互操作。
CORBA服务可以被视为一种软件组件,可以在网络上的不同
计算机之间进行通信。
它提供了一个中间件层,用于处理不同计算机之间的通信细节,例如数据序列化、网络传输和安全性。
这使得开发人员可以将重点放在业务逻辑上,而不必担心底层通信机制。
在CORBA服务中,存在两个主要角色:客户端和服务器。
客户端是请求CORBA服务的应用程序,而服务器是提供CORBA服务的应用程序。
客户端向服务器发送请求,服务器
根据请求执行相应的操作,并将结果返回给客户端。
CORBA
使用一个称为ORB(Object Request Broker)的组件来协调客
户端和服务器之间的通信。
CORBA服务提供了一种透明的方式来访问远程对象。
远程对
象是分布在不同计算机上的对象,可以通过CORBA服务进行远程访问。
客户端不需要了解远程对象的位置和实现细节,只需要知道对象的接口定义。
这种透明性使得客户端可以轻松地访问远程对象,同时也降低了系统的耦合度。
CORBA服务的另一个重要特点是面向对象的。
它支持面向对
象的概念,例如继承、封装和多态。
通过使用面向对象的概念,
开发人员可以更容易地设计和实现复杂的分布式系统。
CORBA服务还提供了一些高级功能,例如事务处理和持久性。
事务处理允许开发人员将多个操作组合成一个原子操作,以确保数据的一致性和完整性。
持久性允许对象在服务器重启后保持其状态,以便客户端可以继续与对象交互。
总的来说,CORBA服务为分布式系统提供了一种简单、灵活
和可扩展的通信机制。
它通过隐藏底层通信细节和提供丰富的功能,使得开发人员可以更容易地开发和维护分布式应用程序。
同时,CORBA服务还具有跨平台性,可以在不同的操作系统
和编程语言之间进行通信。
然而,CORBA服务也存在一些挑战。
首先,它的学习曲线比
较陡峭,需要开发人员具备一定的分布式系统和面向对象编程的知识。
其次,CORBA服务的性能可能不如其他分布式通信
技术,例如Web服务或消息队列。
最后,CORBA服务的部署和配置可能比较复杂,需要一些额外的设置和配置。
尽管如此,CORBA服务仍然是一种重要的分布式计算平台,
并在许多行业中得到广泛应用。
它在电信、金融、航空航天和军事等领域发挥着重要作用。
随着互联网的发展和新兴技术的出现,CORBA服务将继续适应和演变,为分布式系统提供更
好的通信和互操作性。
不确定你想写关于什么主题的内容,请给出具体的主题或要求。