RPC(Remote Procedure Call)即远程过程调用,指被调用方法的具体实现不在程序运行本地,而是在别的某个地方。主要应用于不同的系统之间的远程通信和相互调用。
如 A 调用 B 提供的 remoteAdd 方法:
有些远程调用选择比较底层的 socket 协议,有些远程调用选择比较上层的 HTTP 协议。
远程调用的好处:
解耦:
当方法提供者需要对方法内实现修改时,调用者完全感知不到,不用做任何变更;
这种方式在跨部门,跨公司合作的时候经常用到,并且方法的提供者我们通常称为:
服务的暴露方
这里使用 PHP Socket 来创建一个服务端和客户端,目录结构如下:
RpcServer.php