在 RPC 中,客户端导致在另一个地址空间(通常是远程服务器)上执行过程。该过程被编写为好像它是本地过程调用一样,将客户端程序与服务器通信的细节抽象化。远程调用通常比本地调用慢且不太可靠,因此有助于区分 RPC 调用和本地调用。流行的 RPC 框架包括 Protobuf、Thrift 和 Avro。
RPC 是一种请求-响应协议:
示例 RPC 调用:
GET /someoperation?data=anId
POST /anotheroperation { "data":"anId"; "anotherdata": "another value" }
RPC 专注于暴露行为。RPC 常常因为内部通信的性能原因而被使用,因为你可以手工定制原生调用以更好地适应你的用例。
用自己的话写下这一站的结论。