美文网首页
Dubbo 与 ZooKeeper

Dubbo 与 ZooKeeper

作者: 阿历Ali | 来源:发表于2019-03-10 15:53 被阅读0次

工作以来用到的微服务只有Dubbo。简单总结Dubbo的一点问题,以及ZooKeeper在其中的作用,以自勉。

1. Dubbo 超时原因及处理

Dubbo 的默认超时时间 DEFAULT_CONNECT_TIMEOUT = 3000,默认重试次数 DEFAULT_RETRIES = 2。

Dubbo 配置粒度为全局、接口、方法。

按照默认配置,当第一次调用超过 3s 没有响应,Dubbo 会重新路由触发第二次调用;当第二次调用超过 3s 没有响应,按同样操作触发第三次;当第三次超时时,会抛出 com.alibaba.dubbo.remoting.TimeoutException 。

超时原因:a. Provider 服务提供者处理时间大于消费者等待时间;b. 网络延迟

处理方法:a. 由于实际需要时间大于等待时间,没有必要设置超时时间,或者设置大于处理时间的超时时间。

b. 防止出现网络延迟问题,建议保留超时重试机制。

c. 对于查询类的请求,直接告知超时即可;

d. 对于增、删、改类的请求,建立容错机制,如忽略重复请求,或通过业务主键、状态检查等保证数据的唯一性、正确性。

2. Dubbo 与 ZooKeeper

在 Dubbo 的架构体系中有注册中心模块,它不是必须的。注册中心可以实现服务注册、服务订阅。即当有多个服务提供者,注册中心可以整合告知消费者可用的有哪些。

ZooKeeper 在 Dubbo 架构体系中的角色是注册中心。

ZooKeeper 提供命名服务,通过文件目录的树状结构创建服务节点,存储服务路径(URL);通过心跳检测机制,发现挂掉的服务,将其从服务列表中清除。

这样简单总结不免道听途说,浅尝辄止。不过总结一下,督促自己学习,总比不学强。

越学习越发现所知甚少。从别人那里听到不觉得怎样,当有亲身体会时觉得很恐怖。持续学习,持续进步。

相关文章

网友评论

      本文标题:Dubbo 与 ZooKeeper

      本文链接:https://www.haomeiwen.com/subject/xubupqtx.html