RMI和CORBA有什么区别?

12

RMI是Java的一种实现,基于CORBA(它是语言无关的),就我所记得的... - OMG Ponies
这里有一个比较:Java RMI & CORBA. 两种竞争技术的比较 - undefined
嘿,猜猜“rmi corba”的第一个谷歌搜索结果是什么? - skaffman
1
Java RMI不是CORBA的实现,它不遵循CORBA规范。 - CodyBugstein
2个回答

20

RMI是Java特有的技术,CORBA则有多种语言的实现。您可以使用CORBA在不同语言编写的程序之间共享对象(例如C++和Java)。

CORBA使用IDL(接口定义语言)将接口与实现分离。RMI仅使用Java接口。

由于CORBA没有绑定到特定的语言,因此数据类型并不总是精确映射到您的编程语言使用的类型(例如,在IDL中,long是Java中的int)。

RMI程序可以从远程JVM下载新类。CORBA没有这种代码共享机制。

虽然已经过了一段时间,但我还记得(从将Java应用程序从CORBA移植到RMI中)CORBA(或者至少我们正在使用的实现)负责处理许多必要的同步并发代码,而当使用RMI时,这是我们必须明确执行的内容。

RMI可以配置为使用IIOP(CORBA使用的协议)运行。


3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接