zuul-gateway-demo
zuul-gateway-demo copied to clipboard
我想把ribbon.listOfServers的后端地址配置到数据库中,动态负载,可以支持吗?
这是我的配置,请求/api/**是可以轮询配置的listOfServers的后端地址的:
zuul.routes.api.path=/api/**
zuul.routes.api.stripPrefix=true
api.ribbon.listOfServers=http://192.168.1.75:8088,http://192.168.1.75:7070
想知道怎么把这个配置存到数据库中,让它从数据库中去取?类似动态路由那样
其实思路应该是和zuul的配置差不多的,不过我还没有去ribbon的源码,有机会的话,可以补上。
zuul可以像nginx一样增加监听端口吗
@workcheng 这个问题解决了吗?
@workcheng 这个问题解决了吗?我也是想用ribbon。
试了一下这样可以,不过应该不是最佳方案:ConfigurationManager.getConfigInstance().setProperty("api.ribbon.listOfServers", "http://192.168.1.75:8088,http://192.168.1.75:7070");
可以参考EurekaRibbonClientConfiguration的实现,通过@RibbonClients的defaultConfiguration配置,自定义一个RibbonClientConfiguration,然后在里头自定义实现一个serverlist的bean。
可以参考EurekaRibbonClientConfiguration的实现,通过@RibbonClients的defaultConfiguration配置,自定义一个RibbonClientConfiguration,然后在里头自定义实现一个serverlist的bean。
https://github.com/wpstan/CustomZuulRibbon 这里实现了一个自定义zuul路由规则以及,自定义listOfServers的ribbon后台主机服务。
参考:
- https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-ribbon.html
- https://github.com/Netflix/archaius/wiki/Users-Guide