Spring Cloud Gateway网关

一、Spring Cloud Gateway组件的核心是一系列的过滤器,通过这些过滤器可以将客户端发送的请求由(路由)转发到对应的微服务

       网关的执行过程:当一个请求到达网关,网关利用断言,查看该请求是否符合某一个路由规则,若符合某一个路由规则,则路由到指定的服务,但路由期间要经过一系列过滤器

二、网关(Gateway)是服务的统一入口,它核心功能是:过滤和路由

三、核心概念分析

        a、路由(route) 路由信息的组成:由一个ID、一个目的URL、一组断言工厂、一组Filter组成。如果路由断言为真,说明请求URL和配置路由匹配。

        b、断言(Predicate) Spring Cloud Gateway中的断言函数输入类型是Spring 5.0框架中的ServerWebExchange。Spring Cloud Gateway的断言函数允许开发者去定义
                                      匹配来自于HttpRequest中的任何信息比如请求头和参数。  

        c、过滤器(Filter) 一个标准的Spring WebFilter。 Spring Cloud Gateway中的Filter分为两种类型的Filter,分别是Gateway Filter和Global Filter。过滤器
                                      Filter将会对请求和响应进行修改处理

四、Gateway网关中过滤器的实际运用:

              a、请求鉴权:一般 GatewayFilterChain 执行filter方法前,如果发现没有访问权限,直接就返回空。

              b、异常处理:一般 GatewayFilterChain 执行filter方法后,记录异常并返回。

              c、服务调用时长统计: GatewayFilterChain 执行filter方法前后根据时间统计。
posted @ 2020-09-17 23:57  jock_javaEE  阅读(131)  评论(0编辑  收藏  举报