开源软件:Feign 01 整体概览

Feign 源码解析系列

Posted by Shoukai Huang on May 9, 2019

学习过程

学习过程结合之前的文档进行开展:开源项目源码学习过程

相关文档

1 使用文档:清楚目标项目的使用方法、功能列表;

2 架构文档:一个系统可以(在重大的系统中也确实如此)同时出多种不同的构架类型. 以不同的方式检查同一系统,分析系统的不同部分,或使用不同级别的分解, 都有可能发现不同的构架类型

3 对比选型:寻找同类竞品的对比文档,清楚目标项目的优势与特色

  • Feign、Okhttp、RestTemplate
  • gRPC、dubbo

4 社区讨论:顺着讨论思路,一个问题点切入,便于快速进入状态并找到归属感

相关过程

安装/运行

  • github clone
  • mvn install
  • idea debug

原理

  • MethodHandle 方法解析
  • Type 接口解析
  • 动态代理

测试

阅读

核心类拆解