SpringCloud——服务网关——GateWay

SpringCloud——服务网关——GateWay_第1张图片

1.GateWay是什么?

gateway也叫服务网关,SpringCloud GateWay使用的是Webflux中的reactor-netty响应式编程组件,底层使用了Netty通讯框架。

gateway的功能有反向代理、鉴权、流量控制、熔断、日志监控......

2.为什么不使用Zuul?

当时Zuul2.0迟迟不发布是一个原因,关键点是Zuul1.X是一个阻塞式的网关,不支持任何长连接,请求线程一直要被阻塞到工作线程一直结束,所以Zuul1.X的性能较差。而Zuul2.0又一直跳票,所以SpringCloud就子研了GateWay网关,功能强大,并且是异步非阻塞的。

3.GateWay的三大核心概念

  • Route(路由)

    GateWay配置的动态路由lb,也有负载均衡,可以去匹配提供服务的路由地址。

  • Predicate(断言)

    说白了,断言就是定义了一组匹配规则,让过来的请求根据断言匹配找到相对应的路由然后进行转发。

SpringCloud——服务网关——GateWay_第2张图片

  • Filter(过滤)

我们都是使用自定义过滤器,可以进行一些全局日志记录,统一网关鉴权.........

4.请求到网关的运行流程

yml里面进行配置后,请求的基本流程就是先经过断言规则匹配,去找相对应的路由,如果对,则根据路由中的uri地址+接口进行路由转发,转发中还会通过过滤器(可以进行一些验证等等)。

你可能感兴趣的:(spring,cloud,gateway,spring,boot)