【RPC项目】从 0 到 1 完成RPC项目

本文详细介绍了RPC(远程过程调用)的基本概念及其工作流程,包括客户端和服务端的角色定义、客户端和服务端Stub的作用以及网络传输方式等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • RPC(Remote Procedure Call)即远程过程调用,通过名字我们就能看出 RPC 关注的是远程调用而非本地调用。RPC 的主要目的就是让远程调用和本地调用一样方便,项目也是从最简单的 RPC 开始优化,一步一步完成一个相对全面的 RPC 小项目。
  1. 客户端:调用远程方法的一端。
  2. 客户端 Stub: 可以理解为代理类。主要做任务就是把调用的方法、方法参数等信息传递到服务端。
  3. 网络传输: 包括把客户端 Stub 生成的信息传输到服务端,然后服务端执行完把结果通过网络传回客户端。可以使用 Socket/Netty 进行网络传输。
  4. 服务端 Stub:接收到客户端执行方法的请求后,去指定对应的方法然后将结果返回给客户端 Stub。
  5. 服务端:提供远程方法的一端。

在这里插入图片描述
执行过程:

  1. 客户端发起远程调用
  2. 客户端 Stub 将方法、参数等处理后通过网络传输发送给服务端 Stub
  3. 服务端 Stub 收到远程调用请求后调用信息还原后调用本地方法
  4. 服务端 Stub 将返回值发送给客户端 Stub
  5. 客户端 Stub 处理后返回给远程调用发起者

项目目录:

  1. 【RPC项目】从不代理到动态代理 链接
  2. 【RPC项目】项目标准化链接
  3. 【RPC项目】增加注册中心链接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值