RPC 代表远程过程调用,它支持过程编程。Tt 几乎类似于 IPC 机制,只要软件允许进程管理共享信息,就与环境相关联,只要完全不同的进程在不同的系统上执行单元死刑,并且本质上需要基于消息的通信。
上图显示了 RPC 实现中的工作步骤。
RMI 代表 Remote Method Invocation,类似于 PRC,但它支持面向对象的编程,这是 java 的特性。允许线程决定对外部对象的策略。在 RMI 中,对象作为参数而不是普通数据传递。
此图显示了 RMI 协议的客户端-服务器体系结构。
RPC 和 RMI 相似,但 RPC 和 RMI 的基本区别在于 RPC 支持过程式编程,而 RMI 支持面向对象的编程。
我们来看看 RPC 和 RMI 的比较区别:
编号 | RPC | RMI |
---|---|---|
1 | RPC 是一个依赖库和操作系统的平台。 | RMI是一个java平台。 |
2 | RPC 支持过程式编程。 | RMI 支持面向对象的编程。 |
3 | RPC 与 RMI 相比效率较低。 | RMI 比 RPC 更有效。 |
4 | RPC 产生更多开销。 | RMI产生的开销比 RPC 少。 |
5 | RPC 中传入的参数是普通数据或普通数据。 | 在 RMI 中,对象作为参数传递。 |
6 | RPC 是旧版本的 RMI。 | RMI是 RPC 的后续版本。 |
7 | RPC 编程的易用性很高。 | 在 RMI 中提供了低编程的便利性。 |
8 | RPC 不提供任何安全性。 | RMI提供客户端级别的安全性。 |
9 | RPC开发成本巨大。 | RMI开发成本是公平或合理的。 |
10 | RPC 中存在版本控制的巨大问题。 | RMI有可能使用 RDMI 进行版本控制。 |
11 | RPC中的简单应用需要多个代码。 | RMI 中的简单应用程序不需要多个代码。 |
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/264419.html