写在前面
上一篇系列文章写的是springboot相关的改动, 这边主要是针对cloud相关组件的改动, Spring Cloud Finchley 目前还是M8的版本, 预计在4月初会发布 release版本,Spring Cloud Finchley的发布标志着springboot2.0和springcloud的完全发布。
spring cloud eureka相关
- 之前部署eureka的web,默认服务的status是指向的info节点,但是springboot2.0开始,默认的
/info
节点改成了/actuator/info
,但是eureka也从spring cloud Finchley的m9开始,默认的链接修改到了/actuator/info
, 但是我们的服务框架,都继承了swagger,所以可以通过在具体的app的配置中加入
eureka:
instance:
status-page-url-path: /swagger-ui.html
来设置链接到服务的swagger页面,方便开发、测试和联调。
- 相关的依赖包的maven坐标也发生了变化, 下面是最新的依赖
<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相关
- 在改动迁移的过程中发现了一个bug, 不过目前没有看到官方的解决方案。需要持续进行跟进,因为对于一些配置动态刷新是一个十分常见的需求 对于bean的refresh失败的问题,这个问题会在springboot 2.0.1 和 springcloud Finchley 的RC1进行修复, 所以 springboot 2.0.0 的版本是 存在这个问题的。 建议大家跟随最新的版本。
spring cloud feign相关
- feign已经被移到独立的项目, 所以项目的包名发生了改变, 下面是最新的包名称
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
- 相关的一些包名也发生了改变,从之前的feign变成了openfeign
spring cloud sleuth相关
- sleuth的包名称发生了改变
- api直接使用了brave的api
- 移除了spring stream kafka 相关的包和依赖,完全使用zipkin和brave相关的包。
- sleuth加入了spring-kafka的集成,这样对于kafka也能进行很好的trace跟踪
相关代码
具体一些改动可以参考我们的
loc-framework
和
loc-cloud-compoent
上面的项目我们在持续更新