在Nacos 1.0.0 Release之后首繁,Spring Cloud Alibaba也終于發(fā)布了最新的版本坞琴。該版本距離上一次發(fā)布哨查,過去了整整4個月!下面就隨我一起看看剧辐,這個大家期待已久的版本都有哪些內(nèi)容值得我們關注寒亥。
版本變化
之前在《Spring Cloud Alibaba與Spring Boot、Spring Cloud之間不得不說的版本關系》一文中荧关,我有提到過當前版本的Spring Cloud Alibaba還處于孵化器中溉奕,沒有納入Spring Cloud的主線版本。所以忍啤,我們在使用的時候需要明確Spring Boot加勤、Spring Cloud主版本以及Spring Cloud Alibaba之間的版本關系。
這次的更新同波,在版本上與我之前文章中說的0.2.2來支持Greenwich有所區(qū)別鳄梅。這里糾正一下,對于Greenwich版本的支持采用了0.9.x的版本號來對應未檩,所以Spring Boot
戴尸、Spring Cloud、Spring Cloud Alibaba三者之間的準確關系如下表所示:
Spring Boot | Spring Cloud | Spring Cloud Alibaba |
---|---|---|
2.1.x | Greenwich | 0.9.x |
2.0.x | Finchley | 0.2.x |
1.5.x | Edgware | 0.1.x |
1.5.x | Dalston | 0.1.x |
模塊新增
這次新版本中冤狡,最值得關注的應該就是下面這幾個新模塊的加入了孙蒙。之前我說過非常看好Spring Cloud Alibaba悲雳,下面新增的幾個模塊就是主要原因之一挎峦。
spring-cloud-alibaba-dubbo
對于Dubbo的支持,我覺得對于國內(nèi)用戶來說怜奖,是非常有意義的浑测。由于Dubbo在過去一段時間對國內(nèi)行業(yè)的滲透非常廣,至今依然有很多團隊在使用著這個老牌RPC歪玲。但是迁央,由于Dubbo只是一個單純的RPC框架,它不像Spring Cloud這樣滥崩,擁有不錯的生態(tài)岖圈,在外圍設施的對接支持上做了非常多的努力,使得我們在使用Spring Cloud的時候钙皮,可以很快的體系化我們的基礎設施蜂科。
現(xiàn)在顽决,Spring Cloud Alibaba將Dubbo融入Spring Cloud體系,可以讓其一起享受Spring Cloud生態(tài)的各種便利导匣。對于原來的Dubbo用戶來說才菠,該模塊的加入為原Dubbo用戶擁抱Spring Cloud生態(tài)提供了非常好的支持,可以大大減少用戶自己融入需要做的擴展工作量贡定。
為什么說這個模塊好呢赋访?看看下面幾個與Spring Cloud生態(tài)融合的重要功能:
- 支持所有Spring Cloud的注冊中心實現(xiàn),包括Spring Cloud Alibaba中整合的Nacos缓待。也就是說蚓耽,以前我們自己在整合Spring Cloud和Dubbo來使用的時候,如果不去為Dubbo擴展注冊中心旋炒,那么就不得不采用Eureka + Zookeeper同時存在的復雜架構〔接疲現(xiàn)在,在這個模塊的幫助下瘫镇,注冊中心就可以得到統(tǒng)一鼎兽。
- 支持RestTemplate,開發(fā)者只需要在定義RestTemplate的
@Bean
注解上搭配使用@DubboTransported
注解汇四,就能將這個客戶端直接支持Dubbo調(diào)用接奈。 - 支持Feign,開發(fā)者只需要在
@FeignClient
注解上搭配使用@DubboTransported
通孽,就能將Feign客戶端變成Dubbo的客戶端。這樣的設計睁壁,對于傳統(tǒng)Spring Cloud用戶來說背苦,是不是也非常容易接受呢?
如果您的團隊還在堅持使用Dubbo潘明,又很想引入Spring Cloud行剂,那么不妨移步來嘗試一下Spring Cloud Alibaba的最新版本吧!
注意:該模塊沒有發(fā)布到0.1.2中钳降,所以只有0.2.2和0.9.0中才擁有厚宰。也就是說,僅支持Spring Boot 2.x和Spring Cloud Finchley版和Greenwich版遂填。
spring-cloud-alibaba-seata
Seata是Alibaba與螞蟻金融共建的一個開源分布式事務解決方案铲觉。通過該模塊的加入,可以非常方便的在Spring MVC吓坚、RestTemplate撵幽、FeignClient的調(diào)用中傳遞事務上下文,同時也支持與Hystrix礁击、Sentinel的聯(lián)合使用盐杂。全方面的打通Spring Cloud生態(tài)的分布式事務場景逗载。
這個框架我還沒有深入的研究過,后續(xù)我也會將這部分內(nèi)容的學習寫到《Spring Cloud Alibaba基礎教程》中與大家分享心得與經(jīng)驗链烈。如果對這個感興趣的厉斟,記得關注我喲。
spring-cloud-alibaba-sentinel-zuul
在該模塊中定義了一些為Zuul定制的過濾器:SentinelPreFilter
强衡、SentinelPostFilter
捏膨、SentinelErrorFilter
。通過它們來為Zuul實現(xiàn)網(wǎng)關層的請求流量控制食侮。用戶可以通過spring.cloud.sentinel.zuul.
參數(shù)來配置這些Sentinel過濾器号涯。
spring-cloud-alibaba-sms
SMS是阿里云的商業(yè)化產(chǎn)品。所以該模塊類之前的SchedulerX模塊锯七,OSS模塊類似链快,主要為了更方便的整合使用而存在。如果是Spring Cloud用戶眉尸,同時也是阿里云這些產(chǎn)品的用戶域蜗,那么直接使用還是非常方便的。但是如果這兩個條件都不滿足噪猾,那么可以忽略之霉祸。
模塊升級
在該版本中對于一些重要的基礎設施模塊也做了大幅度的版本升級,包括:
- Nacos:從0.6.2升級到1.0.0
- Sentinel:從1.4.0升級到1.5.2
對于模塊功能升級主要與模塊整合對象的自身版本有關袱蜡,所以對于這部分的內(nèi)容讀者可以查閱Nacos 1.0.0的文檔以及Sentinel 1.5.2的文檔來進一步新增功能丝蹭。
而對于Spring Cloud Alibaba對其整合新增的配置或注解使用,可以見本文參考資料鏈接看看更新了什么內(nèi)容坪蚁,這里就不做具體介紹了奔穿。
最后歡迎留言參與討論,說說您對Spring Cloud Alibaba新版本的看法吧敏晤!