zoukankan      html  css  js  c++  java
  • 微服务-SpringCloud学习系列(六): 服务网关SpringCloudGateWay

    1.SpringCloudGateWay的使用

    ①创建GateWay网关服务,引入依赖

    (这里注意GateWay使用netty和WebFlux实现,WebFlux和SpringMvc有冲突,因此不能将web依赖放在父pom中,需要单独的放在需要的子工程中,gateway中不能有mvc的web依赖)

      ②配置启动类,不需要额外的注解

     ③配置文件注意,注意列表项用-隔开(例如id和path,这些都可以配置多个)

     2. 路由规则和断言条件(请求参数,Header,Cookie等)

     动态路由(面向服务的路由,在注册中心获取服务名称来进行路由)

     3.路由过滤器(示例为重写过滤器)和路由转发

     

     过滤器生命周期有两个pre和post,

    过滤器类型有两种:GateWayFilter和GlobalFilter

     

     4.自定义全局过滤器(统一认证的实例)

      5.网关的限流算法

    ①计数器算法(限流不够 平滑)

     ②漏桶算法(压力在自身,保护别的服务)

      ③令牌桶算法(保护网关,SpringCloudGateWay的默认限流算法)

     6.网关限流的实现 

    a.基于Filter的限流

    ①准备Redis,并在项目中引入 Redis依赖

     ②修改配置

      ③配置Redis中的key的解析器KeyResolver

    基于路径的限流:

     基于参数或IP的限流

     b.基于sentinel的限流

    ①引入依赖

     ②配置(配置类内容较多,这里只截取部分代码,需要在网上查找完整代码)

     

     修改限流提示信息

     分组限流

     

     7.网关的高可用

     8.总结

    学习SCG的使用,SCG的过滤算法和类型,自定义过滤(全局认证过滤),SCG的高可用

  • 相关阅读:
    preprocess
    数组
    共用体
    动态内存管理函数
    C链表
    文件的定位与出错检查
    字符串读写函数
    C文件操作
    位运算
    爱好-超级IP:超级IP
  • 原文地址:https://www.cnblogs.com/masting/p/12827581.html
Copyright © 2011-2022 走看看