我正在研究一个期末考试,并且对RMI和CORBA有一些疑问。这些是来自学习指南的讨论问题,因此它们周围没有实际的应用程序上下文。

  • 为什么RMI和CORBA基于TCP?该问题说明了根据调用语义来回答的问题。

  • 到目前为止,我已经想到的是TCP将比UDP更可靠,并且在RMI/CORBA中,我们需要网络可靠性。我还在某个地方读到了TCP深入嵌入 native Java网络类的信息。我对这种说法不太自信,因为CORBA可以用任何语言实现。
  • 讨论RMI和CORBA名称服务之间的区别。

  • 我对此问题有些困惑,因为到目前为止我已经读到RMI和CORBA正在融合技术,而RMI可以访问CORBA对象。我现在的理解是,名称服务似乎非常相似,任何区别都不值得一提。
  • 为什么RMI与CORBA显式地需要动态调用?

  • 我还没有想出什么。

    我意识到我在问三个不同的问题,但它们似乎都相关。

    最佳答案

    基于TCP的RMI/CORBA:它们本质上都是分布式对象调用机制,仅在可靠的传输基础上构建它就更容易了,而您不必担心数据会丢失。如果他们基于UDP构建,则他们将不得不具有许多其他机制来担心重传和重复等问题。

    RMI/CORBA名称服务:在这里更深入地了解。 CORBA名称服务称为COS Naming,RMI名称服务为JNDI。它们处于不同的体系结构级别。 JNDI本质上是一组API,而COS命名既是API(通过IDL表示)又是有线协议(protocol)定义。
    动态调用。我不确定这个问题的含义。从本质上讲,这两种技术都允许您远程调用对象上的方法。

    希望这有所帮助。

    关于java - RMI和CORBA有何区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1898944/

    10-10 09:44