Netty-实现RPC框架

Netty实现RPC

RPC基本介绍

  1. RPC(Remote Procedure Call)远程过程调用,就是一个计算机A上有一个程序,一个计算机B上也有一个程序,A应用程序可以调用B应用程序的方法,调用方式很简单就好像调用自己的本地方法那样
  2. 常用的RPC框架有:阿里的Dubbo、Google的gRPC、Spring的SpringCloud等

RPC调用流程

在这里插入图片描述

  1. 服务消费者(Client)以本地调用方式调用服务
  2. ClientStub接收到调用后负责将方法、参数等封装成能够进行网络传输的消息体
  3. ClientStub将消息进行编码并且发送到服务端
  4. ServerStub接收到消息进行解码
  5. ServerStub根据解码结果调用本地的服务
  6. 本地服务执行并将结果返回给ServerStub
  7. ServerStub将返回导入结果进行编码并发送给消费方
  8. ClientStub接收到消息并进行解码
  9. 服务消费方(Client)得到结果

自己实现dubbo RPC(基于Netty)

  1. dubbo底层使用了netty作为网络通讯框架,要求用Netty实现一个简单的EPC框架
  2. 模板dubbo,消费者和提供者约定接口和协议,消费者远程调用提供者的服务,提供者返回一个字符串,消费者打印提供者返回的数据。底层网络通讯协议使用Netty 4.x

共同接口

需定义一个服务提供方与服务消费方都需要的共同接口

在这里插入图片描述

服务提供者

实现HelloService接口

在这里插入图片描述

编写netty核心类

在这里插入图片描述

编写处理业务的Handler

在这里插入图片描述

服务消费者

编写netty核心类

在这里插入图片描述

编写处理业务的Handler

在这里插入图片描述

测试

在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JolyouLu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值