距離Spring Boot 2.2.0的發(fā)布已經(jīng)有一個(gè)半月左右時(shí)間,由于與之匹配的Spring Cloud版本一直沒有Release,所以在這期間碰到不少讀者咨詢的問題都是由于Spring Boot和Spring Cloud版本不匹配導(dǎo)致趾疚。
很多時(shí)候,我們?cè)趯W(xué)習(xí)或重建系統(tǒng)的時(shí)候都喜歡直接選用最高版本來開發(fā)以蕴,但是在使用Spring全家桶的時(shí)候糙麦,這樣的選擇不一定是最佳選擇。主要還是由于Spring全家桶中各項(xiàng)目之間還存在一定的依賴關(guān)系丛肮。尤其是在大版本迭代期間赡磅,是我們尤其要注意的。比如宝与,這次Spring Framework焚廊、Spring Boot、Spring Cloud的升級(jí)习劫,是一次整體的大版本的升級(jí)咆瘟,涵蓋了Spring Framework 5.2、Spring Boot 2.2诽里、Spring Cloud Hoxton袒餐。
由于Spring Boot 2.2基于Spring Framework 5.2構(gòu)建,而Spring Cloud Hoxton又基于Spring Boot 2.2構(gòu)建谤狡。所以灸眼,在Spring Cloud Hoxton發(fā)布Release版本之前,出現(xiàn)了很多Spring Boot 2.2搭配Spring Cloud Greenwich版本使用而出現(xiàn)各種莫名問題的情況墓懂。
現(xiàn)在Spring Cloud Hoxton的正式發(fā)布焰宣,也預(yù)示著Spring Cloud用戶可以正式開始往Spring Boot 2.2.x版本進(jìn)行逐步升級(jí)。
Spring Cloud Hoxton版本內(nèi)容
下面我們來關(guān)注下在Spring Cloud Hoxton版本中都提升了哪些內(nèi)容捕仔。先來看看這次各依賴項(xiàng)目的版本升級(jí):
- Spring Cloud Aws 2.2.0.RELEASE
- Spring Cloud Vault 2.2.0.RELEASE
- Spring Cloud Circuitbreaker 1.0.0.RELEASE
- Spring Cloud Cli 2.2.0.RELEASE
- Spring Cloud Gateway 2.2.0.RELEASE
- Spring Cloud Zookeeper 2.2.0.RELEASE
- Spring Cloud Starter Hoxton.RELEASE
- Spring Cloud Build 2.2.0.RELEASE
- Spring Cloud Config 2.2.0.RELEASE
- Spring Cloud Dependencies Parent 2.2.0.RELEASE
- Spring Cloud Starter Parent Hoxton.RELEASE
- Spring Cloud Sleuth 2.2.0.RELEASE
- Spring Cloud Contract 2.2.0.RELEASE
- Spring Cloud Gcp 1.2.0.RELEASE
- Spring Cloud Bus 2.2.0.RELEASE
- Spring Cloud Consul 2.2.0.RELEASE
- Spring Cloud Stream Horsham.RELEASE
- Spring Cloud Kubernetes 1.1.0.RELEASE
- Spring Cloud Openfeign 2.2.0.RELEASE
- Spring Cloud Commons 2.2.0.RELEASE
- Spring Cloud Dependencies Hoxton.RELEASE
- Spring Cloud Task 2.2.0.RC1
- Spring Cloud Function 3.0.0.RELEASE
- Spring Cloud Hoxton.RELEASE
- Spring Cloud Netflix 2.2.0.RELEASE
- Spring Cloud Security 2.2.0.RELEASE
- Spring Cloud Release Hoxton.RELEASE
- Spring Cloud Cloudfoundry 2.2.0.RELEASE
在這次的版本升級(jí)中宛徊,我覺得以下幾點(diǎn)是非常值得讀者關(guān)注和學(xué)習(xí)的:
新的負(fù)載均衡器實(shí)現(xiàn)
Spring Cloud Hoxton版本中第一次引入同時(shí)支持阻塞式與非阻塞式的負(fù)載均衡器來作為已經(jīng)進(jìn)入維護(hù)狀態(tài)的Netflix Ribbon佛嬉。
通過引入org.springframework.cloud:spring-cloud-loadbalancer
依賴,你就可以將新的BlockingLoadBalancerClient
與RestTemplate
一起使用了闸天。
同時(shí)暖呕,該依賴的引入也將支持Reactive應(yīng)用,跟其他使用一樣苞氮,只需要使用@LoadBalanced
來修飾WebClient.Builder
即可湾揽。
新的斷路器實(shí)現(xiàn)
該項(xiàng)目中定義了斷路器的抽象API,以及對(duì)各開源實(shí)現(xiàn)的整合封裝笼吟,其中包括:
- Resilience4j
- Spring Retry
- Hystrix (spring-cloud-netflix)
- Sentinel (spring-cloud-alibaba)
加入更多Reactive支持
- Spring Cloud Gateway中增加ReactiveLoadBalancer
- 以下組件中增加ReactiveDiscoveryClient服務(wù)發(fā)現(xiàn)實(shí)現(xiàn):
- Spring Cloud Netflix
- Spring Cloud Consul
- Spring Cloud Zookeeper
- Spring Cloud Openfeign
- Spring Cloud Cloudfoundry
- Spring Cloud Kubernetes
相關(guān)閱讀
- Spring Boot 2.2.0 正式發(fā)布库物,大幅性能提升 + Java 13 支持
- Spring Boot 2.2.1 正式發(fā)布,需特別注意這個(gè)注解的使用贷帮!
- Spring Cloud 全面學(xué)習(xí)教程
歡迎關(guān)注我的公眾號(hào):程序猿DD戚揭,獲得獨(dú)家整理的學(xué)習(xí)資源和日常干貨推送。
如果您對(duì)我的專題內(nèi)容感興趣撵枢,也可以關(guān)注我的博客:didispace.com