gateWay+nacos实现动态路由的配置
一、实现方式
1、首先加入spring-boot-starter-actuator的依赖,然后在配置文件中暴露gateway即可
management: endpoints: web: exposure: include: gateway
之后就可以监控gateway 的各个节点信息了,具体访问如下所示
ID | HTTP Method | Description |
---|---|---|
globalfilters |
GET | 展示所有的全局过滤器 |
routefilters |
GET | 展示所有的过滤器工厂(GatewayFilter factories) |
refresh |
POST【无消息体】 | 清空路由缓存 |
routes |
GET | 展示路由列表 |
routes/{id} |
GET | 展示指定id的路由的信息 |
routes/{id} |
POST【消息体如下】 | 新增一个路由 |
routes/{id} |
DELETE【无消息体】 | 删除一个路由 |
启动路由后访问方式:${gatewayurl}/{id} 比如我的:http://localhost:7901/actuator/gateway/routes 查看所有路由信息
2、实现动态路由
(1)综合上述,只需要调用新增和删除路由的接口就可实现动态路由配置,如果不生效,则调用refresh即可。
(2)那么如何使用nacos去动态的配置路由呢,这里就得利用nacos的配置管理中心了
其实也很简单,只需要将新增的路由配置到nacos配置中心的配置文件中即可
如上图所示,新增路由时只需要添加配置即可,如果我新增了一个名称为microservice-psychological-dbSource_route的路由,新增完成后点击发布,然后在postman中查看是否添加成功
如图所示动态路由添加成功,如果添加完不生效,则可以调用
刷新后即可查看到新增的路由配置,到此动态路由添加完成,即可使用了。如有问题一起讨论学习