如何描述RPC协议交互流程中的每一个细节步骤?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2266个文字,预计阅读时间需要10分钟。
文章目录 + RPC特性 + RPC实现 + RPC交互流程 + RPC交互时序图 + RPC交互流程 + RPC(远程过程调用) + RPC是一种分布式计算的通信协议和编程模型,用于不同计算机或进程之间进行远程过程调用。
文章目录
- RPC特性
- RPC实现
- RPC交互流程
- RPC交互时序图
- RPC交互流程
RPC(Remote Procedure Call,远程过程调用) 是一种分布式计算的通信协议和编程模型,用于不同计算机或进程之间进行远程通信。它允许一个计算机程序(通常是客户端)调用另一个计算机上的过程(通常是服务器端)并获取结果,就像调用本地过程一样,而无需了解底层网络通信的细节。
RPC特性
- 透明性: RPC 提供了透明性,使远程调用看起来就像是本地函数调用,屏蔽了底层的网络通信细节
- 跨语言支持: RPC 允许不同编程语言编写的程序进行通信。这意味着一个程序可以使用一种编程语言编写,而另一个程序可以使用完全不同的编程语言编写,它们仍然可以通过 RPC 进行通信
- 序列化和反序列化: 在 RPC 中,参数和结果通常需要序列化(将数据转换为字节流)以进行传输,然后在接收端反序列化(将字节流还原为数据对象)
这是因为远程调用通常涉及跨越网络传输数据(跨网络传输会涉及到大端小端转换) - Stub/Proxy 生成: 为了使 RPC 远程调用透明化,通常需要为每个远程服务生成客户端存根(Client Stub)和服务器端存根(Server Stub)。
本文共计2266个文字,预计阅读时间需要10分钟。
文章目录 + RPC特性 + RPC实现 + RPC交互流程 + RPC交互时序图 + RPC交互流程 + RPC(远程过程调用) + RPC是一种分布式计算的通信协议和编程模型,用于不同计算机或进程之间进行远程过程调用。
文章目录
- RPC特性
- RPC实现
- RPC交互流程
- RPC交互时序图
- RPC交互流程
RPC(Remote Procedure Call,远程过程调用) 是一种分布式计算的通信协议和编程模型,用于不同计算机或进程之间进行远程通信。它允许一个计算机程序(通常是客户端)调用另一个计算机上的过程(通常是服务器端)并获取结果,就像调用本地过程一样,而无需了解底层网络通信的细节。
RPC特性
- 透明性: RPC 提供了透明性,使远程调用看起来就像是本地函数调用,屏蔽了底层的网络通信细节
- 跨语言支持: RPC 允许不同编程语言编写的程序进行通信。这意味着一个程序可以使用一种编程语言编写,而另一个程序可以使用完全不同的编程语言编写,它们仍然可以通过 RPC 进行通信
- 序列化和反序列化: 在 RPC 中,参数和结果通常需要序列化(将数据转换为字节流)以进行传输,然后在接收端反序列化(将字节流还原为数据对象)
这是因为远程调用通常涉及跨越网络传输数据(跨网络传输会涉及到大端小端转换) - Stub/Proxy 生成: 为了使 RPC 远程调用透明化,通常需要为每个远程服务生成客户端存根(Client Stub)和服务器端存根(Server Stub)。

