深入理解RPC

本文详细介绍了RPC(远程过程调用)的概念,包括其架构组件:客户端、客户端存根、服务端存根和服务器。阐述了RPC调用流程,关键技术和涉及的Call ID映射、动态代理、序列化和反序列化、网络传输、服务注册中心。还讨论了常用RPC框架如gRPC和Dubbo的特点。
摘要由CSDN通过智能技术生成

一.什么是RPC

        RPC(Remote Procedure Call Protocol)远程过程调用协议(主要基于TCP协议),从一台客户端上通过参数传递的方式,调用另外一台服务器提供接口,并返回的结果。

二.RPC架构组件

(1)组件介绍

客户端(Client):服务调用者(消费者)。

客户端存根(Client Stub):存放服务端地址信息,将客户端请求的参数打包成网络传输格式(序列化),再传输到服务端。

服务端存根(Server Stub):接收客户端发送的消息,并进行解包(反序列化),然后调用本地服务进行处理。

服务端(Server):服务的提供者(生产者)。

(2)RPC调用流程

       RPC实现将上图的第2-第10步进行了统一封装,简言之,将服务调用,数据序列化/反序列化(编码/解码)封装起来。让远程调用就像调用本地服务一样。

三.RPC涉及的关键技术

(1)Call ID映射

在RPC中,所有的方法(函数)都有的一个ID,并且所有进

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值