我已经阅读了 RPC(远程过程调用),但我对此仍然不是很清楚。任何人都可以通过给出一个简单且合适/易于理解的示例以非常简单的方式解释它吗?
远程过程调用 (RPC) 是一种协议,一个程序可以使用该协议从位于网络上另一台计算机上的程序请求服务,而无需了解网络的详细信息。过程调用有时也称为函数调用或子例程调用。
RPC 使用客户端-服务器模型。请求程序是客户端,服务提供程序是服务器。与常规或本地过程调用一样,RPC 是一种同步操作,需要暂停请求程序,直到返回远程过程的结果。但是,使用共享相同地址空间的轻量级进程或线程允许同时执行多个 RPC。
当使用 RPC 框架的程序语句被编译成可执行程序时,编译后的代码中会包含一个存根,作为远程过程代码的代表。当程序运行并发出过程调用时,存根接收请求并将其转发到本地计算机中的客户端运行时程序。
客户端运行时程序知道如何寻址远程计算机和服务器应用程序,并通过网络发送请求远程过程的消息。类似地,服务器包括一个运行时程序和与远程过程本身接口的存根。响应请求协议以相同的方式返回。
只需谷歌 RPC,您就可以获得许多关于它的资源。