Gateway 工作原理
Gateway 工作原理
程序员朱永胜有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步, 认准
https://blog.zysicyj.top
全网最细面试题手册,支持艾宾浩斯记忆法。这是一份最全面、最详细、最高质量的 java 面试题,不建议你死记硬背,只要每天复习一遍,有个大概印象就行了。https://store.amazingmemo.com/chapterDetail/1685324709017001`
- Gateway 的客户端回向 Spring Cloud Gateway 发起请求,请求首先会被 HttpWebHandlerAdapter 进行提取组装成网关的上下文,然后网关的上下文会传递到 DispatcherHandler。
- DispatcherHandler 是所有请求的分发处理器,DispatcherHandler 主要负责分发请求对应的处理器,比如将请求分发到对应 RoutePredicateHandlerMapping(路由断言处理器映射器)。
- 路由断言处理映射器主要用于路由的查找,以及找到路由后返回对应的 FilteringWebHandler。
- FilteringWebHandler 主要负责组装 Filter 链表并调用 Filter 执行一系列 Filter 处理,然后把请求转到后端对应的代理服务处理,处理完毕后,将 Response 返回到 Gateway 客户端。
在 Filter 链中,通过虚线分割 Filter 的原因是,过滤器可以在转发请求之前处理或者接收到被代理服务的返回结果之后处理。所有的 Pre 类型的 Filter 执行完毕之后,才会转发请求到被代理的服务处理。被代理的服务把所有请求完毕之后,才会执行 Post 类型的过滤器。