Skip to content

jingtao8a/NettyRpc

Repository files navigation

基于Netty实现的轻量级RPC框架


项目结构

rpc-client

  • async: 实现RpcFuture,完成客户端异步和同步回调
  • core: Netty客户端核心逻辑,Channel复用、心跳保活
  • faultTolerantInvoker: 容错策略(fail-fast和retry)
  • loadbalance: 负载均衡(Random、FullRound(轮询)、ConsistentHash(一致性哈希))
  • proxy: 动态代理

rpc-common

  • annotation: 自定义注解@RpcService(标识提供的服务)
  • codec: Netty编、解码器
  • dto: 自定义RPC传输协议,RpcMessage、RpcRequest、RpcResponse
  • extension: SPI实现可拔插扩展设计
  • register:Zookeeper注册中心
  • serializer:ProtoBuf、Kryo、Hessian序列化和反序列化
  • codec: Netty TCP粘包、拆包处理
  • register: Nacos注册中心
  • compress: dummy和gzip对数据包进行压缩

rpc-server

  • core: Netty 服务端核心逻辑,注册服务,接受请求
  • invoke: 反射调用请求,实现jdk
  • invoke: 反射调用请求,实现cglib

another

  • 集成Spring和SpringBoot
  • 编写更多测试

UML类图

NettyRpc框架结构

性能测试

NettyRpc框架性能测试


参考项目:https://github.com/DongZhouGu/XRPC
参考博客:https://www.dzgu.top/XRPC/#/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages