Dubbo 在哪些地方用了 SPI?
查看完整题解
参考回答
直接回答
协议 Protocol、负载均衡 LoadBalance、集群容错 Cluster、路由和调用过滤器 Filter 都有扩展入口。每个扩展点只管其中一段行为。
讲清原理
协议扩展处理暴露和远程引用。负载均衡扩展负责在候选实例里选目标。过滤器插入调用前后,可做追踪、鉴权等处理。Dubbo 用扩展名称和启用条件把实现接到对应位置。
例子与易错点
要给每次库存 RPC 添加 trace ID,可以用合适的调用过滤器。若想按租户决定可选服务器,应先考虑路由规则或路由扩展,避免把筛选逻辑塞给负载均衡。
延伸阅读 Dubbo SPI 是怎么加载实现的? · Dubbo 中有哪些典型设计模式? · 扩展 Dubbo 的行为要改框架源码吗?
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。