问题描述
我正在学习决赛并且有一些关于RMI和CORBA的问题。这些是从学习指南中获取的讨论问题,因此没有真正的应用程序背景。
I am studying for a final and have a few questions about RMI and CORBA. These are discussion questions taken from a study guide so there is no real application context around them.
- 为什么RMI和CORBA基于TCP?问题表明要根据调用语义来回答。
到目前为止,我所想到的是TCP将比UDP更可靠,而在RMI / CORBA中,我们需要网络可靠性。我还读到了TCP深深嵌入本机Java网络类的地方。我对此声明没有信心,因为CORBA可以用任何语言实现。
What I have thought of so far is that TCP is going to be more reliable than UDP and in RMI/CORBA, we want network reliability. I also read somewhere that TCP is deeply embedded in the native Java networking classes. I am not as confident in this statement since CORBA can be implemented in any language.
- 讨论RMI之间的区别和CORBA名称服务。
我对这个问题有点困惑,因为到目前为止我读到的是RMI和CORBA正在融合技术和RMI可以访问CORBA对象。我现在如何理解,名称服务似乎非常相似,任何差异都不值得注意。
I am a little confused about this question because what I have read so far is that RMI and CORBA are converging technologies and RMI can access CORBA objects. How I understand it now, the name services seem to be very similar and any differences are not worth noting.
- 为什么与CORBA不同,RMI是否需要显式动态调用?
我没有提出任何建议。
我意识到我在问三个不同的问题,但它们似乎都有关系。
I realize I am asking three different questions, but they all seem to related.
推荐答案
基于TCP的RMI / CORBA:它们本质上都是分布式对象调用机制,并且在上面构建它更容易可靠的传输方式,您不必担心数据被丢弃。如果他们在UDP上构建它们,他们必须有很多其他机制来担心重传和重复等。
RMI/CORBA based on TCP: They both are essentially distributed object invocation mechanisms, and it's easier just to build this on top of a reliable transport where you don't have to worry about data being dropped. If they built it on UDP, they would have to have a lot of other mechanism to worry about retransmission and duplicates, etc.
RMI / CORBA名称服务:看得更深这里。 CORBA名称服务称为COS命名,RMI名称服务是JNDI。他们处于不同的架构层面。 JNDI本质上是一组API,COS命名是API(通过IDL表示)和有线协议定义。
动态调用。我不确定这个问题的含义。这两种技术基本上都允许您远程调用对象上的方法。
RMI/CORBA name service: Look more deeply here. The CORBA name service is called COS Naming, and the RMI name service is JNDI. They are at different levels of architecture. JNDI is essentially a set of APIs and COS naming is both APIs (as expressed through IDL) and a wire protcocol definition.
Dynamic invocation. I'm not sure of the meaning of this question. Both technologies essentially allow you to call methods on objects remotely.
希望这会有所帮助。
这篇关于RMI和CORBA的差异?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!