伙伴云客服论坛»论坛 S区 S零代码 查看内容

4 评论

0 收藏

分享

Spring Cloud Alibaba迁移指南(四):零代码兼容 Api-Gateway

自 Spring Cloud 官方宣布 Spring Cloud Netflix 进入维护状态后,我们开端制作《Spring Cloud Alibaba迁移指南》系列文章,向开发者提供更多的技术选型方案,并降低迁移过程中的技术难度。

第一篇:一行代码从 Hystrix 迁移到 Sentinel

第二篇:零代码交换 Eureka

第三篇:极简的 Config

假设你为 Api-Gateway(可能是 Zuul,也可能是 spring cloud gateway) 选择了 Eureka 为注册中心, 找不到一个适宜的交换方案而苦苦烦恼时,那接下来的内容将是非常值得你一读。

Spring Cloud Alibaba 不论是开源的效劳注册组件还是商业化,都实现了 Spring Cloud 效劳注册的规范规范。这就天然的给开发者提供了一种非常便利的方式将效劳注册中心的 Eureka 迁移到开源的 Nacos。

兼容 Api-Gateway:零代码交换 Eureka

使用 Spring Cloud Alibaba 的开源组件 spring-cloud-starter-alibaba-nacos-discovery 来交换 Eureka,兼容 Api-Gateway(注意: 这里的 Api-Gateway 是一个统称,有可能是基于 Zuul 来实现,也有能可能是基于 spring cloud gateway 来实现。)仅需要完成以下几个简单的步骤即可。

环境准备工作:本地需要装置 Nacos。Nacos 的装置方式也是极其的简单,参考 Nacos 官网。假设如今已经正常启动了 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 相关的配置删除。
    (可选) 更换 EnableEurekaClient 注解。 假设在你的应用启动程序类加了 EnableEurekaClient 注解,这个时候需要更符合 Spring Cloud 规范的一个注解 EnableDiscoveryClient 。

注意:以上几个步骤不只仅是在集成 Api-Gateway 网关的项目中做相应的更改,通过 Api-Gateway 网关停止转发的后端效劳也都要做相应的更改

完成以上三个步骤,就已经兼容了 Api-Gateway 网关的路由转发。

关于如何使用 Spring Cloud Alibaba 的商业化组件 ANS 来交换掉 Api-Gateway 的注册中心 Eureka,详细的文档可参考这里。

至此,《Spring Cloud Alibaba迁移指南》系列文章的四篇已全部,若您在迁移过程遇到了其他难题,欢送到Spring Cloud Alibaba@GitHub 提issue,联络我们。

作者:中间件小哥

回复

举报 使用道具

相关帖子
全部回复 (4)
查看全部
转发了

举报 回复 支持 反对 使用道具

转发了

举报 回复 支持 反对 使用道具

转发了

举报 回复 支持 反对 使用道具

转发了

举报 回复 支持 反对 使用道具

本版积分规则 高级模式
B Color Image Link Quote Code Smilies

绿茶
注册会员
主题 22
回复 23
粉丝 0
|网站地图
快速回复 返回顶部 返回列表