PHP如何实现一个详细的简单RPC服务创建示例?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1002个文字,预计阅读时间需要5分钟。
RPC(Remote Procedure Call)即远程过程调用,指在程序中调用一个远程的子程序或函数。这种调用不是在本地执行的,而是在网络上进行。主要应用在不同系统间进行远程通信和相互调用。例如,程序A调用远程的B。
RPC 定义
RPC(Remote Procedure Call)即远程过程调用,指被调用方法的具体实现不在程序运行本地,而是在别的某个地方。主要应用于不同的系统之间的远程通信和相互调用。
如 A 调用 B 提供的 remoteAdd 方法:
- 首先A与B之间建立一个TCP连接;
- 然后A把需要调用的方法名(这里是remoteAdd)以及方法参数(10, 20)序列化成字节流发送出去;
- B接受A发送过来的字节流,然后反序列化得到目标方法名,方法参数,接着执行相应的方法调用(可能是localAdd)并把结果30返回;
- A接受远程调用结果
有些远程调用选择比较底层的 socket 协议,有些远程调用选择比较上层的 HTTP 协议。
本文共计1002个文字,预计阅读时间需要5分钟。
RPC(Remote Procedure Call)即远程过程调用,指在程序中调用一个远程的子程序或函数。这种调用不是在本地执行的,而是在网络上进行。主要应用在不同系统间进行远程通信和相互调用。例如,程序A调用远程的B。
RPC 定义
RPC(Remote Procedure Call)即远程过程调用,指被调用方法的具体实现不在程序运行本地,而是在别的某个地方。主要应用于不同的系统之间的远程通信和相互调用。
如 A 调用 B 提供的 remoteAdd 方法:
- 首先A与B之间建立一个TCP连接;
- 然后A把需要调用的方法名(这里是remoteAdd)以及方法参数(10, 20)序列化成字节流发送出去;
- B接受A发送过来的字节流,然后反序列化得到目标方法名,方法参数,接着执行相应的方法调用(可能是localAdd)并把结果30返回;
- A接受远程调用结果
有些远程调用选择比较底层的 socket 协议,有些远程调用选择比较上层的 HTTP 协议。

