微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SpringCloud Finchley+Spring Boot 2.0 集成Consul的方法示例(1.2版本)

这篇文章主要介绍了SpringCloud Finchley+Spring Boot 2.0 集成Consul的方法示例(1.2版本),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

概述:

Spring Boot 2.0相对于之前的版本,变化还是很大的。首先对jdk的版本要求已经不能低于1.8,其次依赖的spring的版本也是最新版本5.0,并集成了功能强大的webflux等。

SpringCloud Finchley 版本的升级也带来了全新组件:Spring Cloud Function 和 Spring Cloud Gateway ,前者致力于函数式编程模块的整合,后者则是网关netflix zuul 的替换组件。

1)需要的依赖:

4.0.0com.iybsaturn0.0.1-SNAPSHOTjarsc-saturnsc-saturn for Spring Bootorg.springframework.bootspring-boot-starter-parent2.0.1.RELEASEUTF-8UTF-81.83.4.04.1.61.2.132.8.51.0.275.1.401.3.1org.springframework.cloudspring-cloud-starter-consul-discoveryorg.springframework.cloudspring-cloud-starter-configorg.springframework.cloudspring-cloud-starter-openfeignorg.springframework.cloudspring-cloud-starter-netflix-hystrixorg.springframework.cloudspring-cloud-starter-netflix-zuulorg.springframework.cloudspring-cloud-starter-netflix-ribbonorg.springframework.cloudspring-cloud-starter-sleuthorg.springframework.bootspring-boot-starter-tomcatprovidedorg.apache.tomcat.embedtomcat-embed-jaspercompileorg.springframework.bootspring-boot-starter-actuatororg.springframework.bootspring-boot-starterorg.springframework.bootspring-boot-starter-jdbcorg.springframework.bootspring-boot-starter-aoporg.springframework.bootspring-boot-starter-data-redisorg.springframework.bootspring-boot-starter-webcom.alibabafastjson${fastjson.version}io.github.openfeignfeign-gson9.3.1org.projectlomboklomboklog4jlog4j1.2.17commons-beanutilscommons-beanutilscommons-collectionscommons-collectionsorg.apache.commonscommons-lang33.4com.netflix.feignfeign-gson8.15.1 // Spring Cloud Finchley.RELEASE org.springframework.cloudspring-cloud-dependenciesFinchley.RELEASEpomimport

需要注意的地方:

部分依赖做了改变:

旧版本

Finchley 版本

spring-cloud-starter-eureka-client

spring-cloud-starter-netflix-eureka-client

spring-cloud-starter-eureka-server

spring-cloud-starter-netflix-eureka-server

spring-cloud-starter-hystrix

spring-cloud-starter-netflix-hystrix

spring-cloud-starter-hystrix-dashboard

spring-cloud-starter-netflix-hystrix-dashboard

spring-cloud-starter-ribbon

spring-cloud-starter-netflix-ribbon

spring-cloud-starter-turbine

spring-cloud-starter-netflix-turbine

spring-cloud-starter-zuul

spring-cloud-starter-netflix-zuul

spring-cloud-starter-feign

spring-cloud-starter-openfeign

新版本的 SpringCloud 上面的依赖都发生了变化,依赖中都引入了 netflix,或许是为了声明吧(组件的实现底层并非spring)。

log4j依赖:

在spring cloud之前的版本中,日志只需要引入lombok即可,但是Finchley版本需要单独的引用。

org.projectlomboklomboklog4jlog4j1.2.17

2)集成consul配置文件

spring: application: name: sc-saturn profiles: active: dev cloud: config: # uri: http://localhost:9999 discovery: enabled: false serviceId: sc-earth-config-server label: master profile: pre consul: host: http://localhost:8500 port: 80 discovery: prefer-ip-address: true #这里是重写健康检查的endPoint,认为 /health,重写是为了节省不必要的网络传输,只需要http 200状态码即可 health-check-path: /ok/health heartbeat: enabled: false

3)启动类:

@SpringBootApplication @EnableFeignClients @EnableZuulServer @ComponentScan(basePackages={"com.iyb.ak"}) @EnablediscoveryClient @Slf4j public class SaturnApplication implements CommandLineRunner{ public static void main(String[] args) { SpringApplication.run(SaturnApplication.class, args); } @Override public void run(String... args) throws Exception { log.info(">>>>>>>>>>>>>>> sc-saturn 启动完成

4)示例:

注册中心:

 

可以看到 sc-saturn 已经成功注册到 consul中了。另外,上面的consul ui界面发生了变化,这是1.2版本做出的优化,相较以前的ui界面,已经好看很多了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐