首先我们需要知道RPC的概念和要素
RPC (Remote Procedure Call Protocol)远程过程调用协议
随着分布式架构微服务的普及,服务之间的数据需要互相调用。以前的本地调用无法满足,RPC随之应运而生。
比如服务器A上部署的数订单服务,服务器B部署的事商品管理服务。此时订单服务需要获取商品数据,需要向B获取数据。这就是RPC的场景。
RPC的要素
在RPC框架中主要有三个角色:Provider、Consumer和Registry。
如下图所示:
节点角色说明
- RPC Server 服务端:服务提供方
- RPC Client 调用远程服务的消费方
- Registry 服务注册与发现的注册中心
利用Swoole模拟一个简单的RPC调用过程
准备工作:
- 安装swoole扩展
- 创建一个TCP Server
service.php
//创建Server对象