为啥我们需要 RPC 编程? [关闭]

Posted

技术标签:

【中文标题】为啥我们需要 RPC 编程? [关闭]【英文标题】:Why we need RPC programming? [closed]为什么我们需要 RPC 编程? [关闭] 【发布时间】:2015-08-02 17:07:38 【问题描述】:

我从事系统安全工作,我想知道为什么我们需要 RPC 编程以及 RPC 和简单套接字编程之间的区别是什么?它们都有一个客户端和服务器应用程序,基于 tcp/ip,IP 地址,端口号,... 谢谢

【问题讨论】:

【参考方案1】:

RPC 是关于如何将结构化数据作为调用发送到服务器并获取结构化数据作为响应的一种定义。您可以使用任何具有相同基本目标的a wide variety of protocols,例如 SOAP 或 WCF。

任何这些协议都建立在 TCP/IP 之上,并允许服务器和客户端使用预定义的结构进行通信。您可以在没有任何这些协议的情况下执行相同的操作,但是您必须为服务器和客户端的通信方式设置一组新的自定义规则。

您不需要任何这些协议进行通信,有时(例如在实时在线游戏中)使用自定义的流线型协议来代替,但对于大多数客户端-服务器通信而言,最好使用众所周知的协议。

【讨论】:

【参考方案2】:

嗯,有很多不同的 RPC 技术,所以很难说你指的是什么。但一般来说,它是网络传输(如 UDP 和 TCP)之上的一层,用于编组参数和调用结果。您需要它以结构化的方式与服务进行通信。一些常用的应用程序和系统服务使用众所周知的 RPC 机制(如 Windows DCOM、NFS 挂载协议、Kerberos、SAP RFC)。

【讨论】:

以上是关于为啥我们需要 RPC 编程? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

为啥需要RPC,而不是简单的HTTP?

为啥我们需要 void 函数? [关闭]

为啥 GWT RPC 需要同步接口?

为啥我们需要使用存储过程? [关闭]

为啥我们需要进出组装说明? [关闭]

为啥我们的项目需要接口层/抽象类? [关闭]