本文探討如何零代碼將Eureka遷移到Nacos。html
做者:得少,校對:周立。git
Spring Cloud官方宣佈Spring Cloud Netflix進入維護狀態(詳見Spring Cloud Netflix項目進入維護模式之我見 ),後續再也不會有新的功能已成爲事實。github
做爲開發者,如何使用極簡的方式替換Netflix相關組件成爲首要解決的問題。Spring Cloud Alibaba實現了Spring Cloud服務註冊規範——這讓開發者可以很是便利、無痛地將Eureka遷移到Nacos。spring
若是你想使用 Spring Cloud Alibaba 的開源組件 spring-cloud-starter-alibaba-nacos-discovery替換 Eureka,只需完成如下幾步!app
**安裝 Nacos。**Nacos 的安裝很是簡單,本文不作贅述,可參考 Nacos 官網 ,也可參考本博客近期更新的Spring Cloud Alibaba系列博客
。ui
**添加 Nacos的依賴,同時去掉 Eureka依賴。**在須要替換的工程目錄下找到pom.xml,添加以下依賴:code
<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 。server
修改application.properties。一些關於Nacos的配置也必須在application.properties(或application.yml)配置,以下所示: application.properties:xml
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
記得刪除和 Eureka 相關的配置。htm
(可選) 更換EnableEurekaClient 註解。若是在你的應用啓動程序啓動類加了@EnableEurekaClient
,需將其修改成@EnableDiscoveryClient
,或者索性刪除。
啓動你的應用便可,至此,你已實現 「零行代碼使用 Nacos 替換 Eureka」!
完整方式可參考 Spring Cloud Alibaba的 Wiki 文檔。
若是你想使用 Spring Cloud Alibaba 的商業化組件 spring-cloud-starter-alicloud-ans 替換 Eureka,也僅需完成以下幾步。
安裝輕量版配置中心。 輕量版配置中心的下載和啓動方式可參考 配置輕量配置中心。
添加ANS的依賴,同時去掉 Eureka依賴。 在須要替換的工程目錄下找到pom.xml。添加以下依賴:
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alicloud-ans</artifactId> <version>0.2.1.RELEASE</version> </dependency> </dependencies>
同時去掉依賴spring-cloud-starter-netflix-eureka-client 。
(可選) application.properties 配置。 一些關於 ANS的配置也可在application.properties(或application.yml)配置,以下所示:
spring.cloud.alicloud.ans.server-list=127.0.0.1 spring.cloud.alicloud.ans.server-port=8080
以上配置均爲默認值,所以這一步是可選的。記得刪除和Eureka相關的配置。
(可選) 更換EnableEurekaClient 註解。若是在你的應用啓動程序啓動類加了@EnableEurekaClient
,需將其修改成@EnableDiscoveryClient
,或者索性刪除。
啓動你的應用便可,至此,你已實現 「零行代碼使用 Nacos 替換 Eureka」!
完整的使用方式可參考 Spring Cloud Alibaba 的Wiki 文檔 。
http://www.itmuch.com/spring-cloud-alibaba-migration/spring-cloud-alibaba-1/