任务
跑通springcloud插件,研究底层原理
springcloud 插件
依赖
先看 springcloud 的依赖,可以看到和 divide 插件类似,也是实现了 AbstractSoulPlugin 抽象类。

基础实现原理
我们可以聚焦于 SpringCloudPlugin 的实现,重点关注 doExecute 方法。
- 这里的负载均衡是用 ribbon
- service-id 是 springCloud-test,就是 springcloud 服务的 app 名称
1 | protected Mono<Void> doExecute(final ServerWebExchange exchange, final SoulPluginChain chain, final SelectorData selector, final RuleData rule) { |
负载均衡 balance
在这里我们可以注意到,springcloud 插件的原理其实和 divide 插件类似,区别就是负载均衡使用了 netflix 的 Ribbon 作为负载均衡器。
后续安排
- 对 springcloud 的 ribbon 进行小结