自 Spring Cloud 官方宣布 Spring Cloud Netflix 进入维护状态后,咱们开始制做《Spring Cloud Alibaba迁移指南》系列文章,向开发者提供更多的技术选型方案,并下降迁移过程当中的技术难度。html
第二篇,Spring Cloud Alibaba 实现了 Spring Cloud 服务注册的标准规范,这就自然的给开发者提供了一种很是便利的方式将服务注册中心的 Eureka 迁移到开源的 Nacos 。 git
第一篇回顾:一行代码从 Hystrix 迁移到 Sentinelgithub
若是你须要使用 Spring Cloud Alibaba 的开源组件 __spring-cloud-starter-alibaba-nacos-discovery__ 来替换 Eureka。须要完成如下几个简单的步骤便可。spring
__添加 Nacos 的 pom 依赖,同时去掉 Eureka。__ 在须要替换的工程目录下找到 maven 的配置文件 pom.xml。添加以下的 pom 依赖:微信
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>0.2.1.RELEASE</version> </dependency> </dependencies>
同时将依赖的 __spring-cloud-starter-netflix-eureka-client__ pom 给去掉。
__application.properties 配置。__ 一些关于 Nacos 基本的配置也必须在 application.properties(也能够是application.yaml)配置,以下所示: application.properties:app
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
同时将和 Eureka 相关的配置删除。
直接启动你的应用便可。到目前为止,就已经完成了 “零行代码使用 Nacos 替换 Eureka”。maven
完整的方式可参考 Spring Cloud Alibaba 的官方 Wiki 文档。ui
若是你须要使用 Spring Cloud Alibaba 的商业化组件 __spring-cloud-starter-alicloud-ans__ 来替换 Eureka。也是仅需完成如下几个简单的步骤便可。阿里云
__添加 ANS 的 pom 依赖,同时去掉 Eureka。__ 在须要替换的工程目录下找到 maven 的配置文件 pom.xml。添加以下的 pom 依赖:spa
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alicloud-ans</artifactId> <version>0.2.1.RELEASE</version> </dependency> </dependencies>
同时将依赖的 __org.springframework.cloud:spring-cloud-starter-netflix-eureka-client__ pom 给去掉。
__(可选) application.properties 配置。__ 一些关于 ANS 基本的配置也能够在 application.properties(也能够是application.yaml)配置,以下所示: application.properties:
spring.cloud.alicloud.ans.server-list=127.0.0.1 spring.cloud.alicloud.ans.server-port=8080
若是不配置的话,默认值就是 __127.0.0.1__ 和 __8080__ ,所以这一步是可选的。同时将和 Eureka 相关的配置删除。
代码层面不须要改动任何代码,直接启动你的应用便可。到目前为止,就已经完成了 “零代码使用 ANS 替换 Eureka”。
完整的使用方式可参考 Spring Cloud Alibaba 的官方 Wiki 文档。
原文连接 更多技术干货 请关注阿里云云栖社区微信号 :yunqiinsight