springcloud网关

1.网关的理解?理解成火车站的检票口,统一去检票

网关的优点:统一去做一些操作,处理一些问题

作用

1.路由

2.鉴权

3.跨域

4.缓存

5.流量染色

6.访问控制

7.统一业务处理

8.发布控制

10.负载均衡

11.接口保护

     a. 限制请求

     b.信息脱敏

    c . 降级(熔断)

  d .限流

    e. 超时时间

11. 统一日志

12. 统一文档

  路由

起到转发的作用,比如接口a和接口b,网关会记录着些信息,根据用户访问的地址和参数,转发请求到对应的(服务器/或者集群)

/a =》接口a

/b =》 接口b

/c =》服务a/集群a(随机转发到某一个机器中)

负载均衡

在路由的基础上

/c =》服务a/集群a(随机转发到某一个机器中)

统一鉴权

判断用户是否有权限操作,无论访问什么接口,我都去统一去判断权限,不用重复选

统一处理跨域

网关统一处理跨域 ,不用在每个项目里处理

统一业务逻辑

把一些每个项目的都要做的统一逻辑放到(网关),统一处理,比如本项目的次数统计

访问控制
黑白名单,比如限制ddos ip
发布控制

灰度发布,不如上线新接口,分配20%的流量,慢慢调整比重

流量染色

1.区分用户来源

2.排查用户的问题( 每一个请求添加一个therid)

给请求添加一些标识,一般设置在请求头里

统一日志

统一请求,响应信息记录

统一文档

将下游项目文档进行聚合,在一个页面统一查看

网关的分类

1.业务网关(作用是将请求转发到不同的业务/项目/接口 /服务)

2.全局网关(接入层网关)作用是负载均衡

实现

1.nainx(全局网关), kong网关(api网关)

2.业务网关 spring CloudGateway (取代了zuul)性能高,可以用java来写逻辑

spring CloudGateway 用法

核心概念

路由(根据什么条件,转发到哪里)

断言:一组规则,条件,用来确定如何转发路由

1.客户端发起请求

2. Handler Mapping 根据断言,去将请求转发到对应的路由

3. web Mapping 处理请求,(一层层经过过滤器)

4.实际调用请求服务

两种配置方式

1.配置式 (方便,规范)

2.编程式 (灵活)

断言有很多规则

1. After 在xx时间之前

2. Before 在xx时间之后

3.权重路由 (可以实现灰度发布)

断言其他类型下面地址官网

Route Predicate Factories :: Spring Cloud Gateway

使用案例

logging:
  level:
    org:
      springframework:
        cloud:
          gateway: trace

日志配置:打印更多信息,转发路径

跨域处理

CORS Configuration :: Spring Cloud Gateway

spring: cloud: gateway: globalcors: cors-configurations: '[/**]': allowedOrigins: "https://docs.spring.io" allowedMethods: - GET

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值