RPC 模型
远程过程调用 (RPC) 模型类似于本地过程调用模型。 在本地模型中,调用者将自变量放置到指定位置 (例如,结果寄存器) 中的过程。
然后,调用者将控制权移交给过程。 调用者最终将重新获得控制权,抽取过程的结果并继续执行。
RPC 以类似的方式工作,其中一个控制线程以逻辑方式通过两个进程: 调用者进程和服务器进程。 首先,调用者进程向服务器进程发送包含过程参数的调用消息。 然后,调用者进程等待应答消息 (块)。 接下来,服务器端的一个进程,在调用消息到达之前处于休眠状态,抽取过程参数,计算结果,并发送应答消息。 服务器等待下一条调用消息。 最后,调用者上的一个进程接收应答消息,抽取过程的结果,调用者将恢复执行。
"远程过程调用流" 图 (图 1) 说明了 RPC 范例。

在 RPC 模型中,只有两个进程中的一个在任何给定时间处于活动状态。 此外,此模型只是一个示例。 RPC 协议对实现的并行模型没有限制,而其他协议是可能的。 例如,实现可以选择异步远程过程调用,以便客户机可以在等待来自服务器的应答时继续工作。 此外,服务器可以创建用于处理入局请求的任务,从而保持自由接收其他请求。