自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

【方向盤】Spring Cloud 2021.0.0正式發(fā)布,F(xiàn)eignClient調用結果可一鍵緩存

開發(fā) 前端
每個子項目都有自己的發(fā)版節(jié)奏,Spring Cloud協(xié)調融合在一起,還要依托于Spring Boot的版本升級而升級,需要做兼容測試,很難的呀!

[[441162]]

你好,我是方向盤(YourBatman)。筆者的公號是保留地,只分享原創(chuàng),不轉載、不發(fā)商務廣告!

前言

北京時間2021-12-01,Spring Cloud 2021.0.0正式發(fā)布。話說,2021年都快過完了呀,怎么才第一個版本呢?如果對比去年2020.0.0版本發(fā)布時間是2020-12-22的話,發(fā)現(xiàn)還是有“進步”的哈。

【方向盤】Spring Cloud 2020.0.0正式發(fā)布,再見了Netflix

其實,Spring Cloud的發(fā)版速度慢是必然的,因為它下面的子項目實在太多了,并不像Spring Boot那樣來得純粹很好掌控。每個子項目都有自己的發(fā)版節(jié)奏,Spring Cloud協(xié)調融合在一起,還要依托于Spring Boot的版本升級而升級,需要做兼容測試,很難的呀!

所屬專欄

【方向盤】-Spring Cloud新特性

相關下載

  • 【本專欄源代碼】:https://github.com/yourbatman/FXP-java-ee
  • 【技術專欄源代碼大本營】:https://github.com/yourbatman/tech-column-learning
  • 【女媧Knife-Initializr工程】訪問地址:http://152.136.106.14:8761
  • 【程序員專用網(wǎng)盤】公益上線啦,注冊送1G超小容量,幫你實踐做減法:https://wangpan.yourbatman.cn
  • 【Java開發(fā)軟件包(Mac)】:https://wangpan.yourbatman.cn/s/rEH0 提取碼:javakit

版本約定

  • Spring Framework 5.3.13
  • Spring Boot 2.6.1
  • Spring Cloud 2021.0.0

正文

Spring Cloud 2021.0.0版本的pom依賴:

  1. <dependencyManagement> 
  2.     <dependencies> 
  3.         <dependency> 
  4.             <groupId>org.springframework.cloud</groupId> 
  5.             <artifactId>spring-cloud-dependencies</artifactId> 
  6.             <version>2021.0.0</version> 
  7.             <type>pom</type> 
  8.             <scope>import</scope> 
  9.         </dependency> 
  10.     </dependencies> 
  11. </dependencyManagement> 

值得注意的是,Spring Boot版本請使用2.6.1及以上,而非2.6.0。

尷尬不,這和Spring Cloud 2020.0.0依賴的最低Spring Boot版本為2.5.1而非2.5.0如出一轍。即使強如Spring技術團隊都會因為bug導致出現(xiàn)這種“對不齊”的現(xiàn)象,潔癖患者看著著實有點小難受有木有。所以,程序員平時多多寬容自己O(∩_∩)O

老生常談

關于Spring Cloud,每每都有些老生常談的議題,很基礎,但又不得不知,不得不提。

和Spring Boot的對應關系

Spring Cloud作為云計算框架,以Spring Boot作為基石,因此它和Spring Boot的版本對應關系非常重要。

這是官方給出的對應關系圖:

我把它整理為更為詳細的表格:

 

按目前節(jié)奏,Spring Boot每年發(fā)布2個中版本、一個大版本升級,Spring Cloud保持每年一次大版本升級的用以匹配節(jié)奏。

版本管理

Spring Cloud管理著眾多功能組件,整體上分為幾大類。從源碼處這里可以看出,以2021.0.0版本為例:

筆者制作成表格,方便你收藏:

模塊 版本 核心組件
spring-cloud-commons-dependencies 3.1.0 spring-cloud-commons
spring-cloud-context
spring-cloud-loadbalancer
spring-cloud-starter
spring-cloud-netflix-dependencies 3.1.0 spring-cloud-starter-netflix-eureka-client
spring-cloud-starter-netflix-eureka-server
spring-cloud-openfeign-dependencies 3.1.0 spring-cloud-starter-openfeign
feign-bom:11.7
feign-form-spring:3.8.0
spring-cloud-gateway-dependencies 3.1.0 spring-cloud-gateway-webflux
spring-cloud-gateway-mvc
spring-cloud-gateway-server
spring-cloud-starter-gateway
spring-cloud-circuitbreaker-dependencies 2.1.0 resilience4j-bom:1.7.0
spring-cloud-starter-circuitbreaker-resilience4j
spring-cloud-starter-circuitbreaker-reactor-resilience4j
spring-cloud-config-dependencies 3.1.0 spring-cloud-starter-config
spring-cloud-config-client
spring-cloud-config-server
spring-cloud-config-monitor
spring-cloud-stream-dependencies 3.2.1 spring-cloud-stream
spring-cloud-stream-binder-kafka-streams
spring-cloud-starter-stream-rabbit
spring-cloud-task-dependencies 2.4.0 spring-cloud-starter-task
spring-cloud-task-batch
spring-cloud-task-stream
spring-cloud-consul-dependencies 3.1.0 spring-cloud-starter-consul
spring-cloud-starter-consul-bus
spring-cloud-starter-consul-config
spring-cloud-starter-consul-discovery
spring-cloud-starter-consul-all
spring-cloud-sleuth-dependencies 3.1.0 spring-cloud-sleuth-brave
spring-cloud-sleuth-zipki
spring-cloud-starter-sleuth
spring-cloud-zookeeper-dependencies   spring-cloud-zookeeper-config
spring-cloud-zookeeper-discovery
spring-cloud-starter-zookeeper-all
spring-cloud-cloudfoundry-dependencies 3.1.0 spring-cloud-cloudfoundry-discovery
spring-cloud-starter-cloudfoundry
spring-cloud-contract-dependencies 3.1.0 spring-cloud-contract-wiremock
spring-cloud-contract-spec
spring-cloud-contract-spec-java<
spring-cloud-contract-spec-kotlin
spring-cloud-contract-stub-runner
spring-cloud-function-dependencies 3.2.1 spring-cloud-function-context
spring-cloud-starter-function-web
spring-cloud-starter-function-webflux
spring-cloud-function-deployer
spring-cloud-function-adapter-aws
spring-cloud-function-adapter-azure
spring-cloud-function-adapter-gcp
spring-cloud-function-adapter-openwhisk
spring-cloud-vault-dependencies 3.1.0 spring-cloud-vault-config-aws
spring-cloud-vault-config-consul
spring-cloud-vault-config-database
spring-cloud-vault-config-rabbitmq
spring-cloud-kubernetes-dependencies 3.1.0 kubernetes-client-bom:5.9.0
io.kubernetes:client-java:13.0.0
io.kubernetes:client-java-spring-integration:13.0.0
istio-client
spring-cloud-kubernetes-client-config
spring-cloud-kubernetes-client-discovery
spring-cloud-kubernetes-fabric8-istio
spring-cloud-kubernetes-fabric8-loadbalancer
spring-cloud-starter-kubernetes-fabric8-all
spring-cloud-bus-dependencies 3.1.0 spring-cloud-starter-bus-amqp
spring-cloud-starter-bus-kafka
spring-cloud-starter-bus-stream

發(fā)現(xiàn)沒,如果團隊正在使用kubernetes,那么spring-cloud-kubernetes也將是不錯的解決方案哦,類似于Netflix的全家桶嘛。

當前支持的版本

Pivotal公司(Spring的母公司)對核心產品有個OSS支持協(xié)議,簡而言之:主要版本提供3年支持,Spring Cloud作為Java領域云計算框架遵循了此協(xié)議。
當前支持的版本

發(fā)現(xiàn)沒,如果團隊正在使用kubernetes,那么spring-cloud-kubernetes也將是不錯的解決方案哦,類似于Netflix的全家桶嘛。

特別注意:這里指的主要版本才是3年,主要版本可不常有的哦

每每新版本發(fā)布,就會有一些老版本需要退位讓賢。2021.0.0版本已發(fā)布,各版本的官方支持情況如下:

  • 2021.0版本:他不算一個主要版本,但作為2020.0這個主要版本的升級版,是當前最被推薦使用的
  • 2020.0版本:他是一個主要版本。按計劃會支持到2023年12月份
  • Hoxton版本:(支持Spring Boot 2.2.x和2.3.x)作為Finchley發(fā)行系列的一個次要版本,它的常規(guī)維護將持續(xù)到2021年6月底。從2020-07開始進入到特殊維護期(不加新功能,只改緊急bug),2021-12月底就只會發(fā)布重大錯誤/安全補丁了。2022-2-28徹底結束支持
  • Greenwich版本 :(支持Spring Boot 2.1.x)2020-01就停止維護了,2020年過完就結束生命周期
  • Finchley版本 :(支持Spring Boot 2.0.x)它是一個主要版本的開始,2018年發(fā)布,2021年過完生命周期也就結束了

更老版本 :嗯,忘了吧

新特性

作為主要版本2020.0.0的常規(guī)升級版本,這次動作肯定沒有上個版本那么大,稍微關注下即可。

Spring Cloud Commons

支持為每個Load-balancer(負載均衡器)配置參數(shù),相關代碼在LoadBalancerClientsProperties這里。

該特性同時也添加到了Gateway、Contract 和Openfeign項目中。

Spring Cloud Config

集成了AWS Secrets Manager、AWS Parameter Store 和 GCP Secret Manager。

這個沒啥好說的,畢竟我天朝里配置中心,真有使用Spring Cloud Config的嗎?

Spring Cloud Gateway

作為Spring Cloud非常非常亮眼、常用的組件,這個升級還是可圈可點的:功能更豐富了。

  • 支持 Redis 路由存儲庫。也就是新增的RedisRouteDefinitionRepository這個實現(xiàn)類嘍
  • 支持 HTTP 2。
  • 支持 gRPC。

Spring Cloud Openfeign

支持@Cachable緩存注解,這個必須點贊,很方便很實用!

支持此新功能的核心API為:FeignCachingInvocationHandlerFactory,復用了Spring Cache的能力。

總結

本次Spring Cloud升級點并不多,可能刺激不到你的神級。但或許這也是好事呀,畢竟每次搞那么大的話,真升不動了,躺平走起。

Spring Cloud在2022年會發(fā)布2022.0.0版本,用來支持Spring Boot 3.0.0(基于Spring Framework 6.0),屆時會有非常非常大的變化,到時再見!

 

責任編輯:姜華 來源: Java方向盤
相關推薦

2021-11-29 08:13:41

Spring Boot環(huán)境變量Spring技術

2010-12-21 11:36:58

職場

2023-03-10 14:55:28

2021-10-11 08:51:50

JavaMailJDBCJava

2021-10-08 06:50:32

版本歷史代碼

2021-10-25 08:16:20

Java JAX-RS Java 基礎

2015-06-09 10:36:13

Cloud FoundAzurePaaS

2021-04-23 10:38:52

Spring BootSpringMVC源碼

2021-11-01 07:55:39

Java EE開發(fā)項目

2022-03-28 08:35:33

IDEA快捷鍵操作視窗

2022-12-31 08:36:56

2012-01-10 15:35:44

金山快盤性能

2021-05-06 07:56:22

電腦C盤系統(tǒng)垃圾軟件

2015-02-09 15:25:52

換膚

2020-03-31 15:03:56

Spring Boot代碼Java

2012-10-18 14:41:31

2011-01-10 17:54:54

360黑屏木馬

2022-04-11 08:34:27

IDEA代碼補全

2022-04-06 08:35:13

IDEADebug調試Run運行
點贊
收藏

51CTO技術棧公眾號