前言
什么是 GateWay 网关,在微服务中为了方便统一管理且对外暴露服务端地址,起到了内部和外部的隔离保证了后台服务的安全性。可以根据不同的规则讲不通的请求进行路由到指定的服务器。作用很强大,且统一。 例如:网关鉴权丶跨域处理丶流量现流丶流量统计等等
今天我们的主角是 GateWay
Spring Cloud GateWay是Spring Cloud的⼀个全新项⽬,⽬标是取代Netflix Zuul,基于Spring5.0+SpringBoot2.0+WebFlux(基于⾼性能的Reactor模式响应式通信框架Netty,异步⾮阻塞模型)等技术开发,性能⾼于Zuul,官⽅测试,GateWay是Zuul的1.6倍。
那么我们可以GateWay 做什么呢
- 路由转发 Route
- 处理前后端跨域问题
- 防止sql注入
- 防止web共计(xxl)
- 统一日志记录
- 网关鉴权(没用到,我的项目中健全抽离了一个单独的公共模块)
- 流量现流
GateWay是工作原理
客户端向 Spring Cloud Gateway 发出请求。 如果网关处理程序映射确定请求与路由匹配,则将其发送到网关 Web 处理程序。 此处理程序通过特定于请求的过滤器链运行请求。 过滤器用虚线划分的原因是过滤器可以在发送代理请求之前和之后运行逻辑。 执行所有“预”过滤器