Spring Cloud實戰小貼士:版本依賴關係

https://mp.weixin.qq.com/s/30yFxenkuKzLnOs31JwRJgspring

去年在博客上連載了《Spring Cloud構建微服務架構》的系列博文,雖然這部份內容獲得了很多關注者們的支持,可是不得不說這些內容只是適用於Spring Cloud入門階段對各個組件的初步認識。因此,今年除了將會繼續更新《Spring Cloud構建微服務架構》系列的連載以外,準備再開一個新系列:《SpringCloud實戰小貼士》,該系列文章內容將會聚焦在下面三個點上:微信

  • 常見問題的解析
  • 構建使用的技巧
  • 實戰設計的思考

開篇:版本依賴關係

以前在《聊聊Spring Cloud版本的那些事兒》一文中,咱們已經介紹了Spring Cloud版本命名的由來以及版本號的規則,並列舉了各個版本的依賴內容,以幫助咱們選擇合適的版本進行微服務實踐。架構

因爲Spring Cloud的發展速度很是快,版本的更新很是頻繁,同時成體系化的中文文檔與教程又比較缺少,因此不少初學者在搜索了網上的文章進行Spring Cloud的初次嘗試時,常常會由於沒有關注它的版本依賴關係而引起一些問題。好比平時被問最多的一個問題,在使用Feign的時候爲何報了以下錯誤:ide

org.springframework.core.annotation.AnnotationConfigurationException: Attribute 'value' in annotation [org.springframework.cloud.netflix.feign.FeignClient] must be declared as an @AliasFor [serviceId], not [name].

因爲《Spring Cloud構建微服務架構》系列博文的例子都採用了Brixton版本,在介紹《Spring Cloud構建微服務架構(二)服務消費者》中的Feign時候也使用了它,而該版本的基礎Spring Boot版本是1.3.x,不少初學者可能由於一些緣由,好比:現有應用使用Spring Boot 1.4.x實現或者自身喜歡緊跟潮流,這個時候就會出現上面的問題。微服務

因此,咱們在選擇Spring Boot與Spring Cloud版本的時候,仍是須要儘量的按照Spring Cloud官方版本依賴關係來使用:學習

  • Angel版本對應Spring Boot 1.2.x
  • Brixton版本對應Spring Boot 1.3.x
  • Camden版本對應Spring Boot 1.4.x

就我的而言,推薦使用目前最新的Camden版本與Spring Boot 1.4.x的組合。首先,不光光是Spring Boot版本提高帶來的一些新功能,另外也因爲Spring Cloud的組件版本也有提高,好比Brixton版本中的Spring Cloud Netflix採用了1.1.x,而Camden中採用了1.2.x,這兩個版本之間還有很多區別的,在1.2.x中提供了更多實用功能,好比:以前在《爲Spring Cloud Ribbon配置請求重試(Camden.SR2+)》一文中提到的RestTemplate的請求重試、關於Zuul的一些頭信息優化等。
更多Spring Boot與Spring Cloud學習與實戰內容可掃下面的二維碼關注我,第一時間得到本博客的更新推送。
版權聲明優化

本文采用 CC BY 3.0 CN協議 進行許可。 可自由轉載、引用,但需署名做者且註明文章出處。如轉載至微信公衆號,請在文末添加做者公衆號二維碼。
Spring Cloud實戰小貼士:版本依賴關係.net

相關文章
相關標籤/搜索