
Spring Cloud
文章平均质量分 69
BballChen
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringCloudGateway注册发现源码分析
上一篇文章简单地介绍了SpringCloudGateway配合Eureka来实现服务的注册与发现,本篇我们进入的SCG的源码来看看它是如何实现的。首先来弄明白,服务发现是何时启动的,其实在SCG的启动文件里有服务发现的引导类:进入到GatewayDiscoveryClientAutoConfiguration,可以发现如下代码,看到配置就明白了,只要我们在配置文件中设置这spring.cloud.gateway.discovery.locator.enabled=true,则服务注册发现就会注入Dis原创 2021-04-02 23:33:44 · 378 阅读 · 0 评论 -
SpringCloudGateway配合注册中心的使用
SpringCloudGateway是微服务中的一员,其结合注册中心的使用场景是比较常见的,比如在统一鉴权方面,一般是向网关发起访问某个服务的请求,网关校验客户端是否登录,验证通过才向目标服务发起调用,目标服务的地址是从注册中心获取,而不是通过配置文件或者java类配置了。...原创 2021-04-02 00:53:17 · 1674 阅读 · 0 评论 -
Spring Cloud Gateway各种路由的配置与用途
Spring Cloud Gateway有多种方式配置路由原创 2021-04-01 02:46:11 · 1977 阅读 · 0 评论 -
Spring Cloud Gateway自定义Filter
今天我们来研究自定义Filter原创 2021-03-31 06:40:37 · 1344 阅读 · 1 评论 -
Spring Cloud Gateway源码分析:GatewayFilter的加载机制
要搞清楚GatewayFilter的加载流程得用剥洋葱方式,要一层一层深入进去,总感觉特别绕。其实我只是想看看GatewayFilterFactory是如何生成GatewayFilter的,正常逻辑是加载完配置就立刻生成GatewayFilter以备后面使用,但是SCG为了延迟加载route和缓存route,硬生生的把GatewayFilter的生成放在了第一次路由转发的时候。下面我们从读取配置文件的方式来理解GatewayFilter的加载。1. GatewayProperties加载配置文件在这里插原创 2021-03-30 02:22:53 · 845 阅读 · 0 评论 -
Spring Cloud Gateway:GlobalFilter和GatewayFilter的区别与联系
通过前面的学习,我们知道原创 2021-03-29 02:10:46 · 4349 阅读 · 6 评论 -
Spring Cloud Gateway学习笔记:DispatcherHandler的调用,filter链
今天的文章内容比较散,本来想搞明白请求是如何调到DispatcherHandler的,debug一通发现里面逻辑也太复杂了,全是Netty Reactor编程,这就无法啃了,留着后面去研究了。这篇文章解答下昨天留的两个下问题,最后再添加一个Flux的相关使用方法。1. DispatcherHandler上层调用从debug的调试来看,可以确认DispatcherHandler是在HttpWebHandlerAdapter#handle方法中调用的,因此我们可以进一步总结出SCG的调用链路:HttpWe原创 2021-03-27 03:22:11 · 1567 阅读 · 0 评论 -
Spring Cloud Gateway源码分析:请求是如何路由的
上一篇文章分析了route、predicate和filter的自动装配,但是还不清楚SCG(Spring Cloud Gateway简称)是如何把三个组件联系起来的,也不知道predicate和filter是如何做选择的,今天带着这些疑问,我们一起从源码中找出答案。1. 请求分发SCG是通过DispatcherHandler来做请求分发的,所有的请求会被拦截到这个类的handle方法做处理,其调用链大概是:DispatcherHandler -->RoutePredicateHandlerMap原创 2021-03-26 02:28:04 · 403 阅读 · 0 评论 -
Spring Cloud Gateway路由加载分析
1. 请求流程前面分析过Spring Cloud Gateway由三个组件来完成请求的分发和增强,predicate判定走哪个路由route,然后经过各个过滤器的处理,大致的类图流程如下:2. 源码分析我们从源码中来看看上面三个类是如何加载的,基于Spring Boot的加载套路,我们可以从spring-cloud-gateway-server组件中找到META-INF/spring.factories文件,从配置的类里找出答案。进入GatewayAutoConfiguration类,可以发现这几个原创 2021-03-25 04:40:29 · 489 阅读 · 0 评论 -
Spring Cloud Gateway的应用场景
网关在微服务架构里相当于是客户端请求的一个总入口,有解耦和隐藏后端服务作用。除此之外,网关还有多种功能,本篇文章我们用SCG来模拟实现网关的各种应用场景1. 流控(金丝雀发布,蓝绿发布)目前很多公司都实现了生产不停机发布版本,在生产中同时存在新老版本代码,很多是通过ngnix来做流量的分流。发版时让流量都往老版本的服务走,等新版本发布完后再把流量慢慢切到新版本去验证,这就是所谓的金丝雀发布,也叫做蓝绿发布。下面我们用Spring Cloud Gateway来模拟实现这种分流 @Bean pub原创 2021-03-24 01:56:14 · 2314 阅读 · 1 评论 -
Spring Cloud Gateway源码分析-环境搭建以及入门使用
1、初次认识Spring Cloud Gateway是Spring官方推荐使用一个代理网关,以后可能会替代掉Zuul。其基于Spring Boot 2.x,Spring WebFlux,Reactor之上来构建运行,但在使用时我们可以不用太关心底层的网络协议,只要熟悉它的配置规则就可以上手。总的来说,Spring Cloud Gateway跟其他网关类似,能够提供如下功能:权限控制;限流;路由转发;负载均衡;黑白名单控制Route、Predicate、Filter组成的三件套是我们学习Sp原创 2021-03-23 04:14:19 · 756 阅读 · 0 评论