刚转型微服务,网关路由这块大家都是怎么做的动态加载的?
目前搜集到想法的有两个:1 、利用配置中心刷新配置文件; 2 、看了下 SimpleRouteLocator 这个类,其子类 DiscoveryClientRouteLocator 重写了 locateRoutes 生成了默认路由,是不是可以写一个子类继承 SimpleRouteLocator 重写了 locateRoutes(路由存一张表,查询这张表)启动时加载。修改后,写个入库调用 doRefresh()
请问大佬们 那个可行?
1
THESDZ 2020-10-27 10:21:13 +08:00
1.考虑接入注册中心
2.实现其查询路由表的接口 |
3
nickchenyx 2020-10-27 16:40:53 +08:00
注册中心是直接的,可以动态的注册。特殊需求 SimpleRouteLocator 可以继承改写从 db 读取路由数据。我做了一个分流的功能,继承 ZuulFilter 实现路由的切换,按照百分比的形式将请求分别路由到两个集群,这个是为了做迁移做的。
|
4
haosamax OP 注册中心有的,现在就是想是想动态路由功能,考虑是用现在的配置中心读配置 还是重写 locateRoutes()读 DB
|
5
haosamax OP @nickchenyx 注册中心有的,现在就是想实现动态路由功能,考虑是用现在的配置中心读配置 还是重写 locateRoutes()读 DB,在纠结...
|