Spring Cloud Gateway服务网关

Gateway旨在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤器功能,例如:熔断、限流、重试等

Gateway是基于WebFlux框架实现的,而WebFlux框架底层则使用了高性能的Reactor模式通信框架Netty

1.Gateway能干嘛?

反向代理、鉴权、流量控制、熔断、日志监控。。。

2.网关是微服务的入口

Spring Cloud Gateway服务网关

 

SpringCloud Gateway具有如下特性:

  1.动态路由:能够匹配任何请求属性

  2.可以对路由指定 Predicate(断言) 和 Filter(过滤器)

  3.集成Hystrix断路器

  4.集成SpringCloud服务发现

  5.易于编写的Predicate和Filter

  6.请求限流

  7.支持路径重写

 

3.Gateway三大核心概念

  Route  是构建网关的基本模块,由ID,目标URL,一系列的断言和过滤器组成

  Predicate  开发人员可以匹配请求中的内容(如请求头或者参数),如果请求与断言相匹配则进行路由 

  Filter  指的是SpringCloud Gateway中的GatewayFilter实例,使用过滤器可以在请求被路由前或者之后对请求进行修改

 4.Gateway工作流程

客户端向Gateway发送请求,然后再Gateway Handler Mapping中找到与请求匹配的路由,将其发送到Cateway Web Handler

Handler再通过指定的过滤器链来将请求发送到我们实际的服务执行业务逻辑,然后返回

过滤器可能会在发送代理请求之前或之后执行业务逻辑

5.Gateway网关搭建

1.pom引入依赖

2.修改yml配置文件

3.业务类

4.主启动类

5.yml新增网关配置

6.yml配置说明

上一篇:JavaSE-23.1.4【常用函数式接口之Predicate、Predicate案例-筛选满足条件数据】


下一篇:Spring Cloud 终于按捺不住推出了自己的服务网关 Gateway