12月 292020
 

spring cloud gateway(后续简称SCG)本身就是spring cloud体系的一员,在对于java技术栈的系统使用起来比较方便,此外,SCG扩展性比较好,适合作为业务网关的基础、根据自身需求进行二次开发。

关键组成部分

  • 谓词 predicate: 将请求匹配到对应的route上

  • 路由 route: 网关的基本构建块。它由ID,目标URI,谓词集合和过滤器集合定义

  • 过滤器 filter: 由特定工厂构造生成

工作过程

    1. SCG接收客户端请求。

    1. 请求与谓词匹配,获得对应的路由,匹配成功后,继续往下执行。

    1. 请求交给前置filter处理

    1. 请求经过代理服务(类似与RPC),发送给目标URI

    1. 响应交给后置filter处理

    1. SCG将响应返回给客户端

应用场景

  • 灰度发布

    • 可以使用Weight Route Predicate实现

  • 请求限流

  • 服务容错

    • 结合Sentinel或是Hystrix,基于令牌桶算法

其他

  • 监控

  • 故障排查

    • 通过日志

    • Wiretap

参考资料


 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)