Spring Cloud 2020.0.0
沒錯,Spring Cloud 2020.0.0 正式發布了:

感謝Java技術堆疊群友通知,想入群的在公眾號Java技術堆疊后臺回復:wx,正在使用 Spring Cloud 的同學有沒有覺得奇怪,用的好好的英國倫敦地鐵站,版本號怎么突然變成 2020.0.0 了?
沒錯,從 Spring Cloud 2020.0.0-M1 開始,Spring Cloud 廢除了這種英國倫敦地鐵站的命名方式,從而使用了全新的 "日歷化" 版本命名方式,
具體變更的細節這里不展開介紹了,我在好幾個月前就分享過了:
Spring Cloud 2020 版本重大變革,更好的命名方式!
為什么這次 Spring Cloud 2020.0.0 版本趕在 2020 的最后幾天發布,我只能說:
2020 時間真的已經不多了,再不發布就只能叫:Spring Cloud 2021.0.0
所以,我猜吧,Spring Cloud 官方也不希望看到新搞出來的版本命名方式還沒發布就又要改名了,畢竟 2020 日子不多了,最后一個星期了,,
技術更新太快了,,
Maven 中央倉庫已可用:

我們再來打開上一個版本:Hoxton.SR9

看上面的黃色邊框提示,這個專案已經有了一個新的版本:2020.0.0,新的版本時代開啟了!
來吧,愉快地使用 Spring Cloud 吧!
最新 Maven 依賴管理方式:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>2020.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
...
</dependencies>
最新 Gradle 依賴管理方式:
buildscript {
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.10.RELEASE"
}
}
apply plugin: "io.spring.dependency-management"
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:2020.0.0'
}
}
dependencies {
compile 'org.springframework.cloud:spring-cloud-starter-config'
compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
//...
}
2020 版本重要變更
下面堆疊長對 Spring Cloud 2020.0.0 版本發布說明作一個簡單總結,以幫助你確定是否升級,
1、Spring Boot 依賴版本
這個版本需要依賴 Spring Boot 2.4.1,最新的依賴關系如下:
| Release Train | Boot Version |
|---|---|
| 2020.0.x aka Ilford | 2.4.x |
| Hoxton | 2.2.x, 2.3.x (Starting with SR5) |
| Greenwich | 2.1.x |
| Finchley | 2.0.x |
| Edgware | 1.5.x |
| Dalston | 1.5.x |
需要升級的小伙伴們看好了~
參考閱讀:Spring Boot 2.4 正式發布,重大調整
Spring Boot 基礎教程看這里:
https://github.com/javastacks/spring-boot-best-practice
2、修復大量 bug
正常維護,這個版本修復了大量的 bug,
參考:
https://github.com/spring-cloud/spring-cloud-release/wiki/Spring-Cloud-2020.0-Release-Notes#known-issues
3、專案、模塊移除
1)spring-cloud-netflix 模塊移除
下面的模塊已經從 spring-cloud-netflix 中移除了:
- spring-cloud-netflix-archaius
- spring-cloud-netflix-concurrency-limits
- spring-cloud-netflix-core
- spring-cloud-netflix-dependencies
- spring-cloud-netflix-hystrix
- spring-cloud-netflix-hystrix-contract
- spring-cloud-netflix-hystrix-dashboard
- spring-cloud-netflix-hystrix-stream
- spring-cloud-netflix-ribbon
- spring-cloud-netflix-sidecar
- spring-cloud-netflix-turbine
- spring-cloud-netflix-turbine-stream
- spring-cloud-netflix-zuul
- spring-cloud-starter-netflix-archaius
- spring-cloud-starter-netflix-hystrix
- spring-cloud-starter-netflix-hystrix-dashboard
- spring-cloud-starter-netflix-ribbon
- spring-cloud-starter-netflix-turbine
- spring-cloud-starter-netflix-turbine-stream
- spring-cloud-starter-netflix-zuul
2)移除了對 ribbon、hystrix 和 zuul 的支持
在已發布的專案中已經移除了對 ribbon、hystrix 和 zuul 的支持,
hystrix 和 zuul 已經被廢除,之前我有在公眾號Java技術堆疊分享過,但是,ribbon 怎么都移除了??
查了下資料,發現 spring-cloud-loadbalancer 已經取代了 ribbon!
3)移除了 Spring Cloud Security 專案
Spring Cloud Security 這個專案洗掉了,其代碼已經移到了 Spring Cloud 各個子專案中了,
4、Spring Cloud Commons
注意:Bootstrap 已經被改為默認禁用狀態,
Config Client, Consul, Vault, 和 Zookeeper 增加了 Spring Boot 2.4 中的新的匯入配置的方式,即過 spring.config.import 引數匯入配置,具體使用的細節請看對應的檔案,
參考閱讀:Spring Boot 2.4.0 組態檔重大調整
如果你想回到老版本的 bootstrap 功能,可以通過兩種方式開啟它:
1)通過引數開啟
spring.cloud.bootstrap.enabled=true
或者:
spring.config.use-legacy-processing=true
這個引數需要設定在環境變數或者系統級引數,或者命令列引數,
2)通過添加依賴開啟
添加這個依賴:
org.springframework.cloud:spring-cloud-starter-bootstrap
- 增加了 Spring Cloud LoadBalancer 服務器統計功能;
- 通常的安全功能已從現已終止的 Spring Cloud Security 專案移至此處;
- 增加了使用 spring.config.import 進行解密的支持;
5、Spring Cloud Contract
記錄了如何在 Windows 上克隆專案,
6、Spring Cloud Kubernetes
1)增加了基于 Kubernetes Java 客戶端的回應式客戶端發現實作;
2)增加了基于 Kubernetes Java 客戶端的 Spring Cloud Loadbalancer 實作;
7、Spring Cloud Openfeign
1)支持在 Spring Cloud CircuitBreakers 中包裝 feign 客戶端;
2)Spring Cloud OpenFeign 安全部分的代碼,從 Spring Cloud Security 移到了 Spring Cloud OpenFeign;
3)增加了 LoadBalancer 統計功能;
8、Spring Cloud Gateway
增加了 LoadBalancer 統計功能,
9、Spring Cloud Netflix
1)移除了若干模塊,見上面的第3點說明;
2)基于 Eureka Client 的 RestTemplate 已支持 TLS 屬性;
10、Spring Cloud Task
1)增加了有關單步批處理作業的檔案;
以下模塊作為 2020.0.0 的一部分進行了更新:

總結
好了,本次的版本說明就總結到這里了,更多的細節請參考下面發布說明:
https://spring.io/blog/2020/12/22/spring-cloud-2020-0-0-aka-ilford-is-available
https://github.com/spring-cloud/spring-cloud-release/wiki/Spring-Cloud-2020.0-Release-Notes
另外,想學習更多的 Spring Cloud 教程,請關注公眾號Java技術堆疊,在后臺回復:cloud,歷史 Spring Cloud 的教程我都整理好了,都是干貨,
個人感覺這次的版本更新還是挺大的,包括 Spring Boot 的依賴版本升級到了 2.4,還有很多專案和模塊的移除和變更,以及不再支持 Ribbion/ Hystrix/ Zuul,等等……
這些變更對于使用 Spring Cloud 的用戶來說,無疑增加了很多不確定性,增加了系統升級的成本和風險,維護升級真不是一件容易的事,
說話你們用了 Spring Cloud 什么版本?
說實話,我已經更新不動了……
著作權申明:本文系公眾號 "Java技術堆疊" 原創,原創實屬不易,轉載、參考本文內容請注明出處,禁止抄襲、洗稿,請自重,尊重他人勞動成果和知識產權,
近期熱文推薦:
1.Java 15 正式發布, 14 個新特性,重繪你的認知!!
2.終于靠開源專案弄到 IntelliJ IDEA 激活碼了,真香!
3.我用 Java 8 寫了一段邏輯,同事直呼看不懂,你試試看,,
4.吊打 Tomcat ,Undertow 性能很炸!!
5.《Java開發手冊(嵩山版)》最新發布,速速下載!
覺得不錯,別忘了隨手點贊+轉發哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/239891.html
標籤:其他
