1. 定义:
CORBA(Common Object Request Broker Architecture,通用对象请求代理架构) ,是由OMG(Object Management Group,對象管理組) 制定和控制的软件构建标准。
这个架构使得不同平台 和使用不同编程语言编写的应用程序能够互操作。
它通过定义通用的API 、通信协议 和服务信息模型 ,为分布式计算 供了基础,允许对象在网络中被透明地(Transparent) 和位置无关地(location independent) 调用。
2. 主要组件和特点包括:
2.1 主要组件基本包括:
-
IDL(Interface Design Language,接口描述语言)
CORBA使用IDL 来描述对象的接口,允许定义如何从IDL映射到各种编程语言,如C++、Java、Python等。
-
ORB(Object Request Broker,对象请求代理)
通过对象引用(类似于指针),可实现对本地或远程对象的调用,实现过程中使用了**ORB(对象请求代理)**来传递调用和结果。
-
IIOP(Internet Inter-ORB Protocol,因特网ORB间协议)
数据传输协议 ,CORBA使用通用ORB间协议(GIOP)和其基于因特网的实现IIOP(因特网ORB间协议) 来在不同的计算机体系结构之间传输数据。此外,还有基于SSL的SSLIOP和基于HTTP的HTIOP等变体。 -
还有很多...
2.2 特点或好处:
-
CorbaLoc(Corba对象位置)
用于提供对象位置的易读字符串,类似于URL,帮助定位可互操作的对象(IOR)。
-
语言和操作系统无关性
CORBA支持多种编程语言和操作系统,促进了跨语言和跨平台的互操作性。
-
数据压缩
CORBA的ZIOP扩展支持数据压缩,允许应用程序在不需了解具体压缩技术的情况下进行高效数据传输。
-
...
3. 目标
- Define通用基础设施(即插即用,分布式,面向环境);
- 支持开发分布式application(可移植,面向对象,可互操作);
- 便于hardware,os,net,programming language的独立实现;
- 允许可操作的ORB物件请求代理体系之间的client server interaction
ORB是CORBA standard的middleware,概念性的software bus,隐藏object的location和实现细节。
总之,CORBA为构建和维护大型、复杂的分布式系统提供了一种标准方法,通过抽象和标准化处理,简化了不同系统间的通信和数据交换。