Fork me on GitHub

跟我学Spring Cloud(Finchley版)-20-Spring Cloud Config-Git仓库配置详解

在跟我学Spring Cloud(Finchley版)-19-配置中心-Spring Cloud Config 一节中,已实现使用Git仓库作为Config Server的后端存储,本节详细探讨如何配置Git仓库。 一、占位符支持Config Server的占位符支持{application}、{profile}和{label}。 示例: 123456789101112server: port: 8080spring: application: name: m...

跟我学Spring Cloud(Finchley版)-19-配置中心-Spring Cloud Config

跟我学Spring Cloud(Finchley版)-19-配置中心-Spring Cloud Config

经过前文讲解,至此,微服务架构已经日趋完善——现在已经可以做一个大型的应用了!然而,随着项目的迭代,微服务数目往往与日俱增,如何高效地管理配置成为我们必须解决的问题。本节来讨论如何使用Spring Cloud Config管理配置。 为什么要使用配置中心 集中管理配置。一个使用微服务架构的应用系统可能会包含成百上千个微服务,因此集中管理配置是非常有必要的; 不同环境,不同配置。例如,数据源配置在不同的环境(开发、测试、预发布、生产等)中是不同的; 运行期间可动态调整。例...

Spring Cloud生态的配置服务器最全对比贴

本文从社区活跃度、产品特点、成功案例、产品缺点等维度,全方位对比Spring Cloud Config、Apollo、Nacos、Disconf、Spring Cloud Consul、Spring Cloud Zookeeper等几款Spring Cloud生态的配置服务器,帮助你选择合适的配置服务器。 一、Spring Cloud ConfigGitHub地址https://github.com/spring-cloud/spring-cloud-config ,S...

跟我学Spring Cloud(Finchley版)-18-Zuul深入

本节探讨Zuul的高级特性。 TIPS: 笔者已经写过很多Zuul相关的文章,对于已经写过的内容,就不再啰嗦一遍了,直接贴地址吧。 过滤器详解过滤器是Zuul的核心,Zuul大多功能都是基于过滤器实现的。详见:Spring Cloud Zuul过滤器详解 ,文章着重探讨了Zuul过滤器的生命周期、如何自定义过滤器、如何禁用指定过滤器等。 内置过滤器详解Zuul内置了很多过滤器,这些过滤器帮助我们实现各种能力,来分析一下内置过滤器有哪些,分别是干嘛的。 详见:Spri...

Spring Cloud Alibaba迁移指南2:一行代码从Hystrix迁移到Sentinel

本文对Hystrix、Resilience4j、Sentinel进行对比,并探讨如何使用一行代码将Hystrix迁移到Sentinel。 作者:洛夜,校对:周立 在本博客首发,欢迎转载。 前段时间,Netflix宣布Hystrix进入维护模式,详见Hystrix停止开发,我们该何去何从? ,而Spring Cloud亦宣布Spring Cloud Netflix进入维护状态,后续不再进行更新已成为事实。作为开发者的我们,如何使用极简的方式替换Hystrix成为首要解...

跟我学Spring Cloud(Finchley版)-17-Zuul路由配置详解

上一节( 跟我学Spring Cloud(Finchley版)-16-Zuul )中,已经实现用Zuul转发到Eureka上的微服务。默认的路由规则是:访问$ZUUL_URL/指定为服务/** 会被转发到指定微服务 的/** 。 但在实际项目中,往往需要自己定义路由规则,Zuul的路由配置非常灵活、简单,本节详细讲解Zuul的路由配置。 一、自定义指定微服务的访问路径配置zuul.routes.指定微服务的serviceId = 指定路径 即可。例如: 123zuul...

Spring Cloud Alibaba迁移指南1:零代码从Eureka迁移到Nacos

本文探讨如何零代码将Eureka迁移到Nacos。 作者:得少,校对:周立。 在本博客首发,欢迎转载。 Spring Cloud官方宣布Spring Cloud Netflix进入维护状态(详见Spring Cloud Netflix项目进入维护模式之我见 ),后续不再会有新的功能已成为事实。 作为开发者,如何使用极简的方式替换Netflix相关组件成为首要解决的问题。Spring Cloud Alibaba实现了Spring Cloud服务注册规范——这让开发者能...

跟我学Spring Cloud(Finchley版)-16-Zuul

跟我学Spring Cloud(Finchley版)-16-Zuul

至此,已实现基于Eureka的服务发现,基于Ribbon的负载均衡,Feign也为我们提供了很不错的远程调用能力,使用Hystrix后,高并发场景下应用也不会被别人拖死——咱们的微服务架构已经日趋完善! 然而,迄今为止,只讨论了微服务之间的调用,尚没讨论如何应对外部请求。应对外部请求时,就会发现,我们的架构依然存在一些问题—— 为什么要使用网关不同的微服务一般会有不同的网络地址,而外部客户端(例如手机APP)可能需要调用多个服务的接口才能完成一个业务需求。例如一个电影购...

跟我学Spring Cloud(Finchley版)-15-Hystrix监控详解

跟我学Spring Cloud(Finchley版)-15-Hystrix监控详解

Hystrix提供了监控Hystrix Command的能力,本节来详细探讨。 监控端点与数据应用整合Hystrix,同时应用包含spring-boot-starter-actuator 依赖,就会存在一个/actuator/hystrix.stream 端点,用来监控Hystrix Command。当被@HystrixCommand 注解了的方法被调用时,就会产生监控信息,并暴露到该端点中。当然,该端点默认是不会暴露的,需使用如下配置将其暴露。 12345manag...

跟我学Spring Cloud(Finchley版)-14-Feign使用Hystrix

Feign默认已经整合了Hystrix,本节详细探讨Feign使用Hystrix的具体细节。 服务降级 加配置,默认Feign是不启用Hystrix的,需要添加如下配置启用Hystrix,这样所有的Feign Client都会受到Hystrix保护! 123feign: hystrix: enabled: true 提供Fallback: 12345678910111213@FeignClient(name = "microservice-provider-u...