千家信息网

跟我学Spring Cloud(Finchley版)-01-开篇

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,前言·课程简介最近挺多童鞋在公众号(itmuch_com)上催更Spring Cloud系列教程,故有此系列。以下是几点说明/规划/答疑:问:为什么基于Finchley,而非Greenwich?答:就
千家信息网最后更新 2026年11月01日跟我学Spring Cloud(Finchley版)-01-开篇

前言·课程简介

最近挺多童鞋在公众号(itmuch_com)上催更Spring Cloud系列教程,故有此系列。以下是几点说明/规划/答疑:

问:为什么基于Finchley,而非Greenwich?

答:就目前而言,Finchley更贴近生产,而Greenwich尚未发布--虽然已经RC了,但有挺多不确定因素,例如:Resilience4j是否会在Greenwich版本中成功孵化(应该是不会)、spring-cloud-netflix-concurrency-limits 文档一行都没有等等(搞不好项目被直接干掉也不一定……)还有很多其它未确定的点,导致笔者最终选择使用Finchley作为博客基础版本。未来,在Greenwich正式发布后,考虑升级到Greenwich,或者以番外的形式补充。

问:系列课程怎么规划的?

答:分为主线故事和番外。主线故事讲Eureka、Ribbon、Feign、Hystrix、Zuul、Spring Cloud Config、Spring Cloud Gateway、Spring Cloud Sleuth、Spring Cloud Stream;番外讲Spring Cloud Consul、Spring Cloud R4j、Nacos、Sentinel;另外讲持续集成、持续发布、代码质量控制……暂时是这么规划的。

问:我能从这套课程获得什么?

答:学习完,能比较深入了解Spring Cloud各组件的使用套路、能避过N多常见的坑(诸如Feign配置坑啦、Ribbon配置坑啦、父子上下文坑啦、状态UNKONWN坑啦,你可能不知道我在说什么,没关系,以后遇到了再来查文档就行)、理解各组件的工作原理及组件之间的关系。

问:收费吗?

答:免费。极客时间曾两度找我约稿,我也确实考虑过收费。钱是好东西,我不是圣人,不过还是放弃了,赚钱的方式有很多,开源是我热爱的。我只要大家在提建议意见的时候别那么难听/难看就知足了。(为什么这么说,大家可以回溯一下我当初Spring Cloud开源视频下面的评论。太TM难看了)

问:我该怎么学习这套教程呢?

答:我会在你需要注意的文字上【加粗】,重要知识点标记【重要】,在能拓展你视野的地方标记【TIPS】,在坑或者需要重点关注的地方标记【WARNING】;另外绝对不要忘记【拓展阅读】--这将是是拓展你知识面、开拓技术视野的一个重要途径。记住,永远别只去学习知识,知识是无穷无尽的,对于软件,知识还可能会变……你应该提升的是学习能力,并开拓技术视野。随着微服务/Cloud Native的深入人心,未来必然是整合能力 > 单项技术能力。

问:更新频率?不会太监吧?

答:目前已经完稿21篇,每周规划3更,但不固定周几更新。至于是否太监,我只能尽量不,我不是专职写开源文档的……工作很忙,一般得十点才能到宿舍,开始自己的生活;不一般的时候,没有生活。总之呢,看的人越多,我也会越有激情啊!

问:你TM自问自答跟个精神病一样烦不烦?

答:我TM年纪大了,废话多点不可以吗……

最后说一下,原创不易!如果课程对您有帮助,不要吝啬,请点转发!请喝咖啡就算了,咖啡让我失眠^_^

让我把废话到此为止吧!Let's roll!

Spring Cloud简介

尽管Spring Cloud带有"Cloud"的字样,但它并不是云计算解决方案,而是在Spring Boot基础上构建的,用于快速构建分布式系统的通用模式的工具集。

使用Spring Cloud开发的应用程序非常适合在Docker或者PaaS(例如Cloud Foundry)上部署,所以又叫做云原生应用(Cloud Native Application)。云原生(Cloud Native)可简单理解为面向云环境的软件架构。说到云原生,就不得不提一下《十二要素应用宣言(12-factor Apps)》,这是云原生架构的方法论与最佳实践。

拓展阅读

  • 《Cloud Native Application》电子书:https://pivotal.io/platform-as-a-service/migrating-to-cloud-native-application-architectures-ebook
  • 《十二要素应用宣言(12-factor Apps)》中文版:https://12factor.net/zh_cn/

核心功能

  • Distributed/versioned configuration 分布式/版本化的配置管理
  • Service registration and discovery 服务注册于服务发现
  • Routing 路由
  • Service-to-service calls 端到端的调用
  • Load balancing 负载均衡
  • Circuit Breakers 断路器
  • Global locks 全局锁
  • Leadership election and cluster state 选举与集群状态管理
  • Distributed messaging 分布式消息

版本简介

我们知道,大多数Spring项目都是以"主版本号.次版本号.增量版本号.里程碑版本号"的形式命名版本号的,例如Spring Framework稳定版本4.3.5.RELEASE、里程碑版本5.0.0.M4等。其中,主版本号表示项目的重大重构;次版本号表示新特性的添加和变化;增量版本号一般表示bug修复;里程碑版本号表示某版本号的里程碑。

然而,Spring Cloud并未使用这种方式管理版本。下面我们来详细探讨一下Spring Cloud的版本。

我们来看一下Spring Cloud的版本,如图所示。

由图可知,Spring Cloud是以英文单词 SRX 的形式命名版本号的。那么英文单词和SR分别表示什么呢?

Spring Cloud是一个综合项目,它包含很多的子项目。由于子项目也维护着自己的版本号,Spring Cloud采用了这种版本命名方式,从而避免与子项目的版本混淆。其中,英文单词叫做"release train",Angel、Brixton、Camden等都是伦敦地铁站的名称,它们按照字母顺序发行,我们可将其理解为主版本的演进。SR表示"Service Release",一般表示Bug修复;在SR版本发布之前,会先发布一个Release版本,例如Camden RELEASE。

经过以上讲解,相信大家就能很好地理解Spring Cloud的版本了。例如,Camden SR3表示Camden版本的第3次Bug修复版本。

TIPS

  • Spring Cloud版本发布记录可详见: ,从中我们可清晰看到Spring Cloud版本发布的时间及先后顺序。
  • Spring Cloud版本演进计划:,从中我们可了解Spring Cloud的版本演进计划,例如计划什么时间点发布什么版本等。
  • 事实上,Spring有不少项目使用类似的命名方式。例如Spring Data、Spring Cloud Stream等。

子项目一览

理解Spring Cloud的版本后,我们来看一下各版本Spring Cloud包含的子项目及版本。不同的Spring Cloud版本有不同的子项目:

ComponentEdgware.SR5Finchley.SR2Finchley.BUILD-SNAPSHOT
spring-cloud-aws1.2.3.RELEASE2.0.1.RELEASE2.0.1.BUILD-SNAPSHOT
spring-cloud-bus1.3.3.RELEASE2.0.0.RELEASE2.0.1.BUILD-SNAPSHOT
spring-cloud-cli1.4.1.RELEASE2.0.0.RELEASE2.0.1.BUILD-SNAPSHOT
spring-cloud-commons1.3.5.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-contract1.2.6.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-config1.4.5.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-netflix1.4.6.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-security1.2.3.RELEASE2.0.1.RELEASE2.0.1.BUILD-SNAPSHOT
spring-cloud-cloudfoundry1.1.2.RELEASE2.0.1.RELEASE2.0.1.BUILD-SNAPSHOT
spring-cloud-consul1.3.5.RELEASE2.0.1.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-sleuth1.3.5.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-streamDitmars.SR4Elmhurst.SR1Elmhurst.BUILD-SNAPSHOT
spring-cloud-zookeeper1.2.2.RELEASE2.0.0.RELEASE2.0.1.BUILD-SNAPSHOT
spring-boot1.5.16.RELEASE2.0.6.RELEASE2.0.7.BUILD-SNAPSHOT
spring-cloud-task1.2.3.RELEASE2.0.0.RELEASE2.0.1.BUILD-SNAPSHOT
spring-cloud-vault1.1.2.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-gateway1.0.2.RELEASE2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-openfeign2.0.2.RELEASE2.0.2.BUILD-SNAPSHOT
spring-cloud-function1.0.1.RELEASE1.0.0.RELEASE1.0.1.BUILD-SNAPSHOT

Spring Cloud/Spring Boot兼容性【重要】

Spring Cloud版本Spring Boot版本
Greenwich2.1.x
Finchley2.0.x
Edgware1.5.x
Dalston1.5.x

可前往https://spring.io/projects/spring-cloud#overview查看版本兼容性。

原文:http://www.itmuch.com/spring-cloud/finchley-1/ ,转载请说明出处。

干货分享

版本 子项 子项目 知识 项目 重要 方式 课程 里程碑 里程 学习 应用 规划 分布式 单词 形式 技术 文档 时间 标记 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司 西安纸贵互联网科技有限公司 为想互联网科技怎么样 广州互联网络科技有限公司 长亮科技 互联网金融 国外互联网科技网站 成都玖崟互联网科技有限公司乐商圈怎么样 隆华科技工业互联网 现代互联网科技股 厦门千工互联网科技有限公司 千方科技属于互联网企业吗 互联网与医疗科技 深圳市优智互联网科技有限公司 用友工业互联网科技发展 济南有互联网科技公司吗 高科技互联网套路 张召忠谈中国互联网科技 珠海东科互联网科技有限公司 云鲸互联网络科技有限公司 保山浩联互联网科技有限公司 互联网的科技创新 上海挚品互联网科技 广州宏创互联网科技 掌上梦互联网科技 互联网科技股有哪些 互联网科技有限公司 翻译 国大互联网教育科技有限公司薪资 启辰互联网科技 神州科技互联网有限公司 北京瑞云互联网科技有限公司
0