码迷,mamicode.com
首页 > 编程语言 > 详细

微服务-SpringCloud学习系列(六): 服务网关SpringCloudGateWay

时间:2020-05-04 19:00:33      阅读:69      评论:0      收藏:0      [点我收藏+]

标签:sentinel   默认   自身   pos   过滤器   netty   内容   代码   提示   

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的高可用

微服务-SpringCloud学习系列(六): 服务网关SpringCloudGateWay

标签:sentinel   默认   自身   pos   过滤器   netty   内容   代码   提示   

原文地址:https://www.cnblogs.com/masting/p/12827581.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!