RPC
是“Remote Procedure Call”的缩写。
RPC 是一条消息,指示一台计算机通过网络代表另一台计算机执行代码。它允许一台计算机上本地运行的程序将一个过程(执行特定任务的一段代码)交给服务器上的另一个程序执行,后者会返回结果。发出 RPC 的程序随后会以处理本地运行过程结果的相同方式处理远程过程的结果。
RPC 使用客户端-服务器模型,多个客户端计算机可以连接到服务器,以发送指令并接收数据。程序发出 RPC 时,会包含一组参数,用于指示服务器运行什么过程以及如何运行。例如,向DNS服务器发送 RPC 消息的客户端计算机会将要解析的域名作为参数;向网络打印机发送打印作业的另一条消息,则会将纸张大小和方向等打印设置作为参数。
RPC 没有单一的协议。相反,RPC 的理念是,许多协议都使用这种概念来实现代码的远程执行。一些常见的 RPC 协议包括 XML-RPC使用(XML标记格式化 RPC)和 JSON-RPC使用(JSON格式化 RPC)。不过,所有 RPC 协议都以类似的方式发送消息。客户端程序首先向一段称为存根的客户端代码发起过程调用,该代码充当该过程的代理。存根与服务器通信,告知服务器要运行什么过程以及要使用哪些参数。服务器执行该过程,并将结果发送回存根,然后存根将结果返回给发出 RPC 的程序。
测试你的知识