RPC简介

为什么要学习RPC

  • RPC可以让我们调用远程服务像调用本地服务一样,
  • RPC是微服务的基础,
  • 它是用来解决分布式系统通信的,涉及到网络通信就可以使用RPC
  • RPC将网络通信的整个过程做了封装,使网络通信相关的开发逻辑变得简单。

RPC的作用

  • 屏蔽远程调用和本地调用的差异
  • 隐藏底层网络通信的复杂性,更专注于业务逻辑。

RPC通信流程

首先RPC通信需要保证可靠性,一般采用TCP来传输。
RPC简介

数据格式的约定内容叫做协议,大部分协议分为两部分:数据头和消息体。
数据头一般用于身份识别,包括协议标识、数据大小、请求类型、序列化类型等信息。
消息体主要是请求的业务参数信息和扩展属性等。

序列化:对象转换成二进制
反序列化:根据协议将二进制转换成对象

RPC应用场景

RPC简介
在系统中调用另外一个系统的接口,都属于RPC调用

总结

RPC框架能够帮助我们解决系统拆分后的通信问题,并且能让我们像调用本地一样去远程调用方法。