CORBA,SOAP,RMI

CORBA(Common Object Request Broker Architecture)通用对象请求代理架构是软件构建的一个标准。

CORBA标准由对象管理组织(OMG)设立并进行控制,CORBA定义了一系列API,通信协议,和对象/服务信息模型用于使得异质应用程序能够互相操作,这些应用程序用不同的编程语言编写,运行在不同的平台上。CORBA因此为定义明确的对象提供了平台和位置的透明性,这些对象是分布式计算平台的基础。

通常来说,CORBA把用其他语言开发的程序代码和关于该程序代码能力和如何调用该程序代码的信息包到一个开发包(package)中,开发包中的对象则可以在网络上被其他程序(或CORBA对象)调用。 在这个意义上来讲,CORBA可以被看作是一个机器可读的文件档格式,类似于头文件(header),但是具有相当多的信息。

CORBA使用一种接口定义语言用于刻画对象将体现出来的接口。CORBA又规定了从IDL到特定编程语言,如C++Java,实现的映射。这个映射精确的描述了CORBA数据类型是如何被客户端和服务器端实现的。标准映射的有AdaC、C++、Smalltalk、Java、以及Python。 还有一些非标准的映射,为PerlTcl的映射由这些语言写的ORB实现。

CORBA的IDL只是IDL的一个例子。

在提供用户语言和平台中性的远程过程调用规范的同时,CORBA也定义了通常需要的服务,例如事务和安全。

 

简单对象访问协议SOAP,全写为Simple Object Access Protocol)是一种标准化的通讯规范,主要用于Web服务(web service)中。SOAP的出现是为了简化网页服务器(Web Server)在从XML数据库中提取数据时,无需花时间去格式化页面,并能够让不同应用程序之间透过HTTP通讯协定,以XML格式互相交换彼此的数据,使其与编程语言、平台和硬件无关。此标准由IBM、Microsoft、UserLand和DevelopMentor在1998年共同提出,并得到IBM,莲花(Lotus),康柏(Compaq)等公司的支持,于2000年提交给万维网联盟World Wide Web Consortium;W3C),目前 SOAP 1.1 版是业界共同的标准,属于第二代的XML协定(第一代具主要代表性的技术为XML-RPC以及WDDX)。

用一个简单的例子来说明 SOAP 使用过程,一个 SOAP 消息可以发送到一个具有 Web Service 功能的 Web 站点,例如,一个含有房价信息的数据库,消息的参数中标明这是一个查询消息,此站点将返回一个 XML 格式的信息,其中包含了查询结果(价格,位置,特点,或者其他信息)。由于数据是用一种标准化的可分析的结构来传递的,所以可以直接被第三方站点所利用。

 

Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用应用程序编程接口。它使客户机上运行的程序可以调用远程服务器上的对象。远程方法调用特性使Java编程人员能够在网络环境中分布操作。RMI全部的宗旨就是尽可能简化远程接口对象的使用。

Java RMI极大地依赖于接口。在需要创建一个远程对象的时候,程序员通过传递一个接口来隐藏底层的实现细节。客户端得到的远程对象句柄正好与本地的根代码连接,由后者负责透过网络通信。这样一来,程序员只需关心如何通过自己的接口句柄发送消息。

接口的两种常见实现方式是:最初使用JRMP(Java Remote Message Protocol,Java远程消息交换协议)实现;此外还可以用与CORBA兼容的方法实现。RMI一般指的是编程接口,也有时候同时包括JRMP和API(应用程序编程接口),而RMI-IIOP则一般指RMI接口接管绝大部分的功能,以支持CORBA的实现。

最初的RMI API设计为通用地支持不同形式的接口实现。后来,CORBA增加了传值(pass by value)功能,以实现RMI接口。然而RMI-IIOPJRMP实现的接口并不完全一致。

所使用Java包的名字是java.rmi

 

上面三个技术是java开发中进程调用的基础,其他名词如rpc,iiop,xml-rpc,wsdl,uddi,序列化都与此相关。基层的协议包括tcp/ip,http。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值