最近nacos非常火,很多使用eureka的都替换成nacos,既可以做注册中心也可以做配置中心,除此之外还有更好用的功能,今天说一下nacos和gateway做动态路由。
动态路由网上一搜一大堆,真正好使的没几个,其实有更加直接的方式,nacos已经提供了。下面我们一步步看看动态路由怎么配置。
![de1c4acb9323c64ba1d4aed539202e0c.png](https://i-blog.csdnimg.cn/blog_migrate/177e0cb83f201eb223da837d1e82e9bd.jpeg)
一、Nacos + Gateway动态网关
1.1 引入nacos依赖
在你的gateway项目,和其他微服务中引入nacos,分别是注册中心和配置中心。
com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery ${nacos.version}com.alibaba.cloud spring-cloud-starter-alibaba-nacos-config ${nacos.version}
2.2.1.RELEASE
![f99df102446b322d0fdcd57d62d0d83e.png](https://i-blog.csdnimg.cn/blog_migrate/0f48d4bf88b05cb2c053b436f3d776c0.jpeg)
1.2 gateway配置文件
重点就在以下配置文件的带注释的这一行,这个可以主动将注册中心的服务拉取到网关作为路由,当新服务注册到naocs,会直接添加到网关路由中;从nacos下线的服务会从网关中去除。对比网上增加配置文件,以及代码的动态网关要方便很多。并且不需要在网关中配置路由信息。
spring: profiles: active: dev application: name: bssp-gateway-service cloud: nacos: config: server-addr: 127.0.0.1:8848 namespace: 3a44ef28-b35c-44bb-8cd2-873c14ebc911 group: DEFAULT_GROUP file-extension: yml disc