javascript
Spring Cloud Alibaba迁移指南(四):零代码兼容 Api-Gateway
自 Spring Cloud 官方宣布 Spring Cloud Netflix 進入維護狀態(tài)后,我們開始制作《Spring Cloud Alibaba遷移指南》系列文章,向開發(fā)者提供更多的技術選型方案,并降低遷移過程中的技術難度。
第一篇:一行代碼從 Hystrix 遷移到 Sentinel
第二篇:零代碼替換 Eureka
第三篇:極簡的 Config
如果你為 Api-Gateway(可能是 Zuul,也可能是 spring cloud gateway) 選擇了 Eureka 為注冊中心, 找不到一個合適的替換方案而苦苦煩惱時,那接下來的內容將是非常值得你一讀。
Spring Cloud Alibaba 不管是開源的服務注冊組件還是商業(yè)化,都實現(xiàn)了 Spring Cloud 服務注冊的標準規(guī)范。這就天然的給開發(fā)者提供了一種非常便利的方式將服務注冊中心的 Eureka 遷移到開源的 Nacos。
兼容 Api-Gateway:零代碼替換 Eureka
使用 Spring Cloud Alibaba 的開源組件 spring-cloud-starter-alibaba-nacos-discovery 來替換 Eureka,兼容 Api-Gateway(注意: 這里的 Api-Gateway 是一個統(tǒng)稱,有可能是基于 Zuul 來實現(xiàn),也有能可能是基于 spring cloud gateway 來實現(xiàn)。)僅需要完成以下幾個簡單的步驟即可。
環(huán)境準備工作:本地需要安裝 Nacos。Nacos 的安裝方式也是極其的簡單,參考?Nacos 官網(wǎng)。假設現(xiàn)在已經正常啟動了 Nacos 。
添加 Nacos 的 pom 依賴,同時去掉 Eureka。 在需要替換的工程目錄下找到 maven 的配置文件 pom.xml。添加如下的 pom 依賴:
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>0.2.1.RELEASE</version></dependency> 同時將依賴的?spring-cloud-starter-netflix-eureka-client?pom 給去掉。?application.properties 配置。?一些關于 Nacos 基本的配置也必須在 application.properties(也可以是application.yaml)配置,如下所示:
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 同時將與 Eureka 相關的配置刪除。注意:以上幾個步驟不僅僅是在集成 Api-Gateway 網(wǎng)關的項目中做相應的更改,通過 Api-Gateway 網(wǎng)關進行轉發(fā)的后端服務也都要做相應的更改。
完成以上三個步驟,就已經兼容了 Api-Gateway 網(wǎng)關的路由轉發(fā)。
關于如何使用 Spring Cloud Alibaba 的商業(yè)化組件 ANS 來替換掉 Api-Gateway 的注冊中心 Eureka,詳細的文檔可參考這里。
至此,《Spring Cloud Alibaba遷移指南》系列文章的四篇已全部,若您在遷移過程遇到了其他難題,歡迎到Spring Cloud Alibaba@GitHub?提issue。
本文作者:中間件小哥
閱讀原文
本文為云棲社區(qū)原創(chuàng)內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的Spring Cloud Alibaba迁移指南(四):零代码兼容 Api-Gateway的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 函数式编程 - 组合compose
- 下一篇: JavaScript君,请您坦诚相待~~