前沿技术 之 CORBA 3

原创 2001年12月11日 10:21:00
CORBA & Internet: How does it work?
Based on hypertext principles, the World Wide Web technology was developed as a technology standard for distribution and presentation of data. It let's you link documents that are located on different network nodes. WWW is based on the TCP/IP protocol, of course.

However, the developers at CERN in Geneva did certainly not expect the popularity that the WWW achieved meanwhile. With this popularity, more features were added including dynamic pages or to sending data from the client to the server for further processing. In 1995, the Common Gateway Interface (CGI) was introduced for that purpose. With CGI, the client send information via a file transfer mechanism to the server where the data is read and processed. The server side is usually implemented with the language PERL. To implement such a PERL interface is tedious and difficult. And once in operation, performance is poor. Additionally, dynamic dialogues between client and server are impossible due to the block-oriented nature of data transfer.

At this point, the "Internet Inter-ORB Protocol" (IIOP) enters the scene. Early versions (1.x) of CORBA did not specify an ORB-internal communication protocol. That is, every ORB vendor determined how its ORB would communicate internally. For that reason, it was impossible to send messages from one ORB to an object living in another ORB vendor's server process. Consequently, CORBA 2.0 defined IIOP. IIOP as a standardized protocol allows communication between different ORB-products. There was a proof of concept at Object World West in August 1995: object request brokers from more than a dozen ORB vendors communicated as they were a single system! Many different HW and OS platforms were involved and several implementation languages like C, C++ and Smalltalk.

Thanks to Java and ORBs supporting Java, the inter-ORB concept was taken to the Internet. Today, WWW-browsers can act as clients that access objects on the server via IIOP. The traditional WWW-protocol (HTTP) is not used anymore. The following figure depicts the bootstrapping of a IIOP connection between a client browser and the IIOP-server.

  1. The client requests a HTML-page at the HTTP-server. The client loads it and recognizes that it references Java-code.

  2. The client requests the Java classes at the HTTP-server. The downloaded classes in our example are not standard applets but "ORBlets". They enable the browser to communicate with the CORBA server. ORBlets are application level classes, e.g. a customer object proxy.
    In case that the browser does not have the IIOP java archive, the server must download the basic IIOP classes, too.

  3. The client establishes not the connection to the CORBA server. If done successfully, the client can send messages to objects living in the CORBA server, avoiding the HTTP/CGI bottleneck.

Advantages:

  • client and server communicate with much less overhead

  • server functions can have a return value

  • real Data Types - and not only strings - can be exchanged

  • the server side objects can be implemented in any language (where an CORBA 2.0 compliant ORB is available)

We don't want to give the impression here that IIOP is the infamous "Silver Bullet". Especially when used in Wide-Area-Networks, data often needs to be cached on the client and it is useful to do certain processing directly on the client-side, thus ??undermining a clean 3-tier-architecture. Security is another topic, but that's not specific to IIOP. CORBA offers here a great set of mechanisms (see our security page). However, it can be tricky to work around certain Internet security mechanisms that come with the browsers or with firewall products.

Besides these drawbacks, IIOP allows the Internet browser to act as a true application shell. Netscape recognized that and included the necessary ORB components in their client and server products. Microsoft goes a very similar way, but uses its proprietary ActiveX/DCOM technology instead of CORBA.

d-tec Distributed Technologies GmbH, 1998
 

摘自 Internet

前沿技术 之 CORBA

Tutorial on Distributed ObjectsOutline:Introduction Goals of CORBA - Component Integration Goals of ...
  • goldsun
  • goldsun
  • 2001年12月11日 10:15
  • 618

对象中间件--CORBA开发练习

通过实例掌握CORBA的开发过程:主要包括:接口定义;接口的对象实现;服务器端代码编写;客户端代码编写;CORBA Server/Client的编译与运行; 1)基于CORBA技术开发一个考试成绩查询...
  • u011402642
  • u011402642
  • 2015年06月11日 14:39
  • 1301

Corba开发之基于Java实现Service与Client

1      概述 CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)是由OMG组织制订的一种标准的面向对象应用程 序体系规范...
  • vtopqx
  • vtopqx
  • 2015年11月15日 14:25
  • 1568

CORBA通过IOR文件远程获取实现类

之前的那篇wen
  • DryKillLogic
  • DryKillLogic
  • 2014年05月19日 10:04
  • 4357

RMI, RPC, CORBA区别

RMI 和 RPC均可以均提供远程方法访问的基础通信和参数引用要求的串行化机制,RPC和RMI之间的一个重要差别是RPC用快速而不够可靠的UDP协议,RMI用低速而可靠的TCP/IP协议。另外 RMI...
  • AbnerChai
  • AbnerChai
  • 2012年06月14日 11:02
  • 2112

分布式技术比较(RPC,CORBA,WebService)

1、RPC(Remote Procedure Call Protocol) RPC是由Sun发明的远程过程调用协议,是第一种真正的分布式应用模型。面向过程 2、CORBA(Co...
  • after_
  • after_
  • 2014年01月07日 21:30
  • 1671

Java corba 实例

.NET 和 Java 在技术布局上非常类似,.NET 的远程调用经历了DCOM,.NET Remoting,最后是几乎成了.NET 平台SOA代名词的WCF.WCF的目标在于通过一种通用简单的协议来...
  • afandaafandaafanda
  • afandaafandaafanda
  • 2015年01月23日 12:03
  • 1948

java构建简单的CORBA应用

本文转载自http://www.iteye.com/topic/174951,非常感谢原作者。 JAVA还提供了对CORBA(Common Object Request Broker Architec...
  • chjttony
  • chjttony
  • 2011年06月22日 16:35
  • 6253

使用java和CORBA实现分布应用编程

因为课程的需要,学习了下用java和CORBA来实现分布应用编程,具体的CORBA是什么以及它的框架结构我就不多说了,这里我是给出一个比较完整的例子来展示下代码要怎么写。应用背景:使用java和COR...
  • ancientmoondjay
  • ancientmoondjay
  • 2017年05月07日 21:26
  • 817

软件架构之一 -------CORBA

CORBA、DCOM、WebService 一、公共对象请求代理体系结构   (CORBA)         CORBA(Common Object Request Broker Ar...
  • shuilaner_
  • shuilaner_
  • 2014年10月28日 23:21
  • 1171
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:前沿技术 之 CORBA 3
举报原因:
原因补充:

(最多只允许输入30个字)