/d-rpc

参考Dubbo编写的RPC框架,用于学习使用。基于Netty实现底层通信,实现了基本的RPC功能,包括超时重试,负载均衡等功能,且可以通过Extension机制进行扩展。

Primary LanguageJava

该项目是本人参考Dubbo源码以及自己对Rpc的理解,自己编写的RPC的demo框架,仅用于学习使用,不可投入生产。本人开发经验不足,欢迎大家批评指正。

基本功能:

  1. 支持使用Spring注解配置服务
  2. 支持使用Zookeeper作为注册中心
  3. 支持多注册中心订阅与发布
  4. 支持使用Netty实现网络通信
  5. 支持RoundRobin以及Random负载均衡
  6. 支持负载均衡扩展
  7. 支持异步调用
  8. 支持超时重试
  9. 支持SPI扩展
  10. 支持Protocol扩展
  11. 支持JDK和Javassist动态代理
  12. 支持jdk complier和javassist compiler
  13. 支持Filter扩展
  14. 支持通过RpcContext获取调用信息
  15. 支持AccessLog

todolist:

  1. etcd注册中心、nacos注册中心
  2. http协议
  3. 条件路由
  4. 添加监控
  5. 测试用例增加
  6. 文档编写