Spring Cloud Alibaba遷移指南1:零代碼從Eureka遷移到Nacos

本文探討如何零代碼將Eureka遷移到Nacos。html

做者:得少,校對:周立。git

Spring Cloud官方宣佈Spring Cloud Netflix進入維護狀態(詳見Spring Cloud Netflix項目進入維護模式之我見 ),後續再也不會有新的功能已成爲事實。github

做爲開發者,如何使用極簡的方式替換Netflix相關組件成爲首要解決的問題。Spring Cloud Alibaba實現了Spring Cloud服務註冊規範——這讓開發者可以很是便利、無痛地將Eureka遷移到Nacosspring

零代碼使用 Nacos 替換 Eureka

若是你想使用 Spring Cloud Alibaba 的開源組件 spring-cloud-starter-alibaba-nacos-discovery替換 Eureka,只需完成如下幾步!app

  1. **安裝 Nacos。**Nacos 的安裝很是簡單,本文不作贅述,可參考 Nacos 官網 ,也可參考本博客近期更新的Spring Cloud Alibaba系列博客ui

  2. **添加 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-clientserver

  3. 修改application.properties。一些關於Nacos的配置也必須在application.properties(或application.yml)配置,以下所示: application.properties:xml

    spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

    記得刪除和 Eureka 相關的配置。htm

  4. (可選) 更換EnableEurekaClient 註解。若是在你的應用啓動程序啓動類加了@EnableEurekaClient ,需將其修改成@EnableDiscoveryClient ,或者索性刪除。

啓動你的應用便可,至此,你已實現 「零行代碼使用 Nacos 替換 Eureka」!

完整方式可參考 Spring Cloud Alibaba的 Wiki 文檔

零代碼使用 ANS 替換 Eureka

若是你想使用 Spring Cloud Alibaba 的商業化組件 spring-cloud-starter-alicloud-ans 替換 Eureka,也僅需完成以下幾步。

  1. 安裝輕量版配置中心。 輕量版配置中心的下載和啓動方式可參考 配置輕量配置中心

  2. 添加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

  3. (可選) 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相關的配置。

  4. (可選) 更換EnableEurekaClient 註解。若是在你的應用啓動程序啓動類加了@EnableEurekaClient ,需將其修改成@EnableDiscoveryClient ,或者索性刪除。

啓動你的應用便可,至此,你已實現 「零行代碼使用 Nacos 替換 Eureka」!

完整的使用方式可參考 Spring Cloud Alibaba 的Wiki 文檔

本文首發

http://www.itmuch.com/spring-cloud-alibaba-migration/spring-cloud-alibaba-1/

相關文章
相關標籤/搜索