寫在前面
上一篇系列文章寫的是springboot相關(guān)的改動, 這邊主要是針對cloud相關(guān)組件的改動, Spring Cloud Finchley 目前還是M8的版本, 預(yù)計在4月初會發(fā)布 release版本,Spring Cloud Finchley的發(fā)布標志著springboot2.0和springcloud的完全發(fā)布。
spring cloud eureka相關(guān)
- 之前部署eureka的web,默認服務(wù)的status是指向的info節(jié)點,但是springboot2.0開始,默認的
/info
節(jié)點改成了/actuator/info
,但是eureka也從spring cloud Finchley的m9開始,默認的鏈接修改到了/actuator/info
, 但是我們的服務(wù)框架,都繼承了swagger,所以可以通過在具體的app的配置中加入
eureka:
instance:
status-page-url-path: /swagger-ui.html
來設(shè)置鏈接到服務(wù)的swagger頁面,方便開發(fā)、測試和聯(lián)調(diào)。
- 相關(guān)的依賴包的maven坐標也發(fā)生了變化, 下面是最新的依賴
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
spring cloud config相關(guān)
- 在改動遷移的過程中發(fā)現(xiàn)了一個bug, 不過目前沒有看到官方的解決方案。需要持續(xù)進行跟進,因為對于一些配置動態(tài)刷新是一個十分常見的需求 對于bean的refresh失敗的問題,這個問題會在springboot 2.0.1 和 springcloud Finchley 的RC1進行修復(fù), 所以 springboot 2.0.0 的版本是 存在這個問題的。 建議大家跟隨最新的版本。
spring cloud feign相關(guān)
- feign已經(jīng)被移到獨立的項目, 所以項目的包名發(fā)生了改變, 下面是最新的包名稱
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
- 相關(guān)的一些包名也發(fā)生了改變,從之前的feign變成了openfeign
spring cloud sleuth相關(guān)
- sleuth的包名稱發(fā)生了改變
- api直接使用了brave的api
- 移除了spring stream kafka 相關(guān)的包和依賴,完全使用zipkin和brave相關(guān)的包。
- sleuth加入了spring-kafka的集成,這樣對于kafka也能進行很好的trace跟蹤
相關(guān)代碼
具體一些改動可以參考我們的
loc-framework
和
loc-cloud-compoent
上面的項目我們在持續(xù)更新