RPC(远程过程调用)和 RMI(远程方法调用)是两种机制,允许用户调用或调用将在与用户正在使用的计算机不同的计算机上运行的进程。两者之间的主要区别在于使用的方法或范式。RMI使用面向对象的范式,其中用户需要知道他需要调用的对象和对象的方法。相比之下,RPC 不是面向对象的,也不处理对象。相反,它调用已建立的特定子例程。

RPC 是一种基于 C 语言的相对较旧的协议,因此继承了其范式。使用 RPC 将获得一个看起来非常类似于本地调用的过程调用。RPC 处理将调用从本地传递到远程计算机所涉及的复杂性。RMI也做同样的事情;处理将调用从本地计算机传递到远程计算机的复杂性。但是,RMI 不是传递过程调用,而是传递对对象和正在调用的方法的引用。RMI由Java开发并使用其虚拟机。因此,它专用于用于调用远程计算机上的方法的 Java 应用程序。

最后,RPC和RMI只是实现相同目标的两种手段。这一切都取决于使用的语言以及习惯的范式。使用面向对象的RMI是两者之间更好的方法,特别是对于较大的程序,因为它提供了一个更干净的代码,一旦出现问题,更容易跟踪。RPC 的使用仍然被广泛接受,特别是当任何替代的远程过程协议都不是一种选择时。

RPC和RMI的区别

  1. RMI是面向对象的,而RPC不是;
  2. RPC是C基础,而RMI是Java的;
  3. RMI 调用方法,而 RPC 调用函数;
  4. RPC已经过时,而RMI是未来;

RPC和RMI的区别

本文由网友:凌韬博 投稿 欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:RPC和RMI的区别
本文链接:https://www.vsdiffer.com/vs/rpc-vs-rmi.html
免责声明:以上内容仅代表 网友:凌韬博 个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。