Dubbo面试精华:38题详解+集群容错与负载均衡策略

需积分: 0 0 下载量 112 浏览量 更新于2024-08-03 收藏 20KB DOCX 举报
Dubbo是一个开源的企业级分布式服务框架,它在面试中经常被问及。这里列举了38道Dubbo面试题及部分答案,涵盖了核心概念和关键配置的理解。 1. **Dubbo超时时间设置**: Dubbo支持在服务提供者和服务消费者两端设置超时时间。推荐在服务提供者端配置,因为它们更了解服务特性,但如果消费者端设置了,将优先以消费者为主,因为它提供了更灵活的控制。当消费者超时,服务提供者不会被强制关闭,只会产生警告。消费者端会从Zookeeper获取服务列表并缓存,即使Zookeeper集群宕机,也能通过本地缓存继续通信。 2. **Zookeeper在Dubbo中的作用**: Zookeeper作为Dubbo的注册中心,确保服务提供者和消费者之间的通信。即使Zookeeper集群部分宕机,消费者仍能通过本地缓存访问服务,而服务提供者则无状态,单个节点故障不会影响服务。但若所有Zookeeper都宕机,新服务添加将不可行。 3. **Dubbo负载均衡策略**: - **RandomLoadBalance** (随机负载均衡):根据设定的权重随机选择服务提供者,随着调用量增大,请求分布更均匀。 - **RoundRobinLoadBalance** (轮询负载均衡):按权重比例分配请求,可能导致慢提供者长时间承载大量请求。 - **LeastActiveLoadBalance** (最少活跃调用数):优先选择活跃度低的服务,有助于减少慢提供者的负载。 - **ConsistentHashLoadBalance** (一致性哈希负载均衡):相同参数的请求固定发送到同一提供者,提供较高的容错性,可通过配置调整虚拟节点数量。 这些知识点展示了Dubbo在分布式系统中的重要性,包括服务发现、容错机制以及性能优化策略。理解这些概念和配置对于开发人员来说至关重要,因为它们直接影响着服务的可用性和性能。面试时,候选人需要熟悉这些细节,并能够解释如何根据业务需求调整和优化Dubbo配置。
2024-10-26 上传
2024-10-26 上传