但Spring Cloud Gateway并不提供数据的动态管理,甚至修改个路由都需要重启。我们如何解决它这个短板,同时实现治理配置数据的高效动态管理呢?...Redis通过发布订阅能力, 将数据的变更通知到各网关实例
各网关实例收到通知后, 将数据从持久存储同步至内部高速缓存
内部缓存在网关启动时, 会自动从持久存储加载对应配置进入缓存....可以换成Mysql, 文件, Appolo等), 以及数据变更通知(默认使用的是Redis的发布订阅, 可以换成Appolo通知, 消息队列, 定时扫描等), 都是可以扩展的
3.实现细节
动态路由管理...(左右滑动查看全部代码)
接收到事件后,会调用相应的内部缓存,更新内部缓存中的数据,以实现治理数据变更的及时生效。
精选提问:
问1:当前网关实例因为网络的原因,如果没有订阅到消息,消息会重发吗?...问6:我想提问下,目前gateway我看实现是基于netty实现的http协议的,通过相关的mapping处理断言然后处理过滤器。那有基于netty的tcp协议的实现方案吗?