Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

Dubbo 架构的发现、治理和通信怎么配合?

先说出你的答案

定义边界、关键机制、一个反例;P8题再补容量、失败与验证。

查看完整题解

参考回答

直接回答

地址发现解决“去哪儿”,治理解决“挑谁、失败怎么办”,协议解决“怎么把请求和响应送过去”。业务应用通过代理调用,治理和网络细节藏在 Java 接口下面。

讲清原理

Dubbo 把可调用目标抽象为 Invoker。消费者由目录 Directory 管理一批目标,路由先筛掉不符合规则的实例,负载均衡再选一个,集群策略处理异常。注册中心和配置中心提供地址、规则,正常的业务请求由客户端直接发到选中的实例。

注册中心维护地址,消费者直接向提供者发请求
注册中心维护地址,消费者直接向提供者发请求

例子与易错点

订单查询要求同机房优先。目录提供全体实例,路由先留下同机房候选,负载均衡从中选一个,再由协议发包。一个实例失败后,容错策略才决定是否重选。

延伸阅读 Dubbo 经典架构里有哪些角色? · Dubbo 如何把本地实现暴露成远程服务? · Dubbo 从调用代理到返回结果经过哪些环节?

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。