Spring 源码分析:

spring gateway 概述:

spring gateway 源码分析:

---------------------------------

spring gateway 概述:

网关的
自动配置类的,gateway的做负载均衡看一下,
sprig clound 组件,
三个gatewayproperties
配置文件写进去,spring 的配置,初始书的类,
着两个类,LoadBlace 三台机器的方法,laodBlanceFiler 全部过滤起,大概初始化配置,库存服务的
启动一个库存服务的,gateway 的访问一个存储的服务的,库存服务,
对应的实例,核心的流程,
直接看源码,前端采用的是webflus+reacctro的方法,
Springwebflex 的基本使用,如何理解下面的东西,MVC的框架。

 

spring gateway 源码分析:

Spring gateway:

Spring Cloud提供了两套方便我们编写网关的中间件,分别是zuul和Spring GateWay,在zuul1的IO模型是使用BIO(图1-1)。而zuul2对IO模型使用NIO进行了重构(图1-2)。而Spring GateWay的IO模型是使用NIO。而在Netflix发布zuul2的时候Spring Cloud已经开始不集成到Spring Cloud中,因为Spring Cloud 等着zuul2集成太久,才有了Spring Gateway。Spring GateWay的架构是基于Spring webflux的基础上开发的。而对webflux的RP中涉及的Back Pressure、Stream、asynchronous好处不多说哈哈。

Spring Cloud提供了两套方便我们编写网关的中间件,分别是zuul和Spring GateWay,在zuul1的IO模型是使用BIO(图1-1)。而zuul2对IO模型使用NIO进行了重构(图1-2)。而Spring GateWay的IO模型是使用NIO。而在Netflix发布zuul2的时候Spring Cloud已经开始不集成到Spring Cloud中,因为Spring Cloud 等着zuul2集成太久,才有了Spring Gateway。Spring GateWay的架构是基于Spring webflux的基础上开发的。而对webflux的RP中涉及的Back Pressure、Stream、asynchronous好处不多说哈哈。


 

二、Spring GateWay 转发请求过程

在Spring mvc是通过HandlerMapping解析请求链接,然后根据请求链接找到执行这个请求Controller类 。而在Spring GateWay中也是使用HandlerMapping对请求的链接进行解析匹配对应的Route进行代理转发到对应的服务。图2-1为整个请求的流程,用户请求先通过DispatcherHandler找到对应GateWwayHandlerMapping,再通过GateWwayHandlerMapping解析匹配到对应的Handler。Handler处理完后,再经过Filter,最终到Proxied Service.


 

 

 

 

三、 HandlerMapping \ RouteLocator\GlobalFilter(WebHandler)

3.1 HandlerMapping

图3-1为handler类关系图。这里主要涉及到Spring GateWay相关类的探讨。如:Spring Webflux使用到的RouteFuntionMapping和SimpleUrlHandlerMapping等不做探讨。


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章