29,30丨Faraday网关代码解析(上,下)
- 内核设计分为5个组件
- 本节主要关注路由映射表模块和HttpClient映射表
- 网关的核心逻辑都在 Core 文件夹里
-
文件夹 mappings 对应路由映射表
- 其中 MappingsProvider 就是路由映射表的超类
- 其中 resolveMapping 和 updateMapping 是已经实现好的
- 一个具体实现是基于配置文件的 ConfigurationMappingsProvider
- application-dev.yml 里就有静态配置的路由信息
- 另一个具体实现是基于编程的 ProgrammaticMappingsProvider
- 其中 MappingsProvider 就是路由映射表的超类
-
文件夹 http 对应 HttpClient映射表
- 其中 HttpClientProvider 就是实现HttpClient映射表的
- 这个内部其实就是基于一个HashMap实现的
- 其中 HttpClientProvider 就是实现HttpClient映射表的
-