背景
Dubbo 是一款 RPC 服务开发框架,用于解决微服务架构下的服务治理与通信问题,具有易用、超大规模微服务实践、云原生基础设施适配、安全性等特点。但是不正确的 Dubbo 使用姿势可能会导致 Dubbo 应用以及 ZooKeeper 注册中心出现稳定性问题。近期,一线上客户发布时,由于 Dubbo Reference 重复初始化,导致 ZooKeeper 出现不可用,服务注册订阅失败,造成业务大面积故障。
ZooKeeper 出现异常日志↓


并且 ZooKeeper 集群持续不可用,无法自愈。
原因分析
Dubbo Reference 是 Dubbo 框架中服务提供者在调用者中的代理实现,在初始化 Dubbo Reference 的时候会将 consumer 本身注册在订阅的服务的 consumer 列表中,如果在一个应用中实例化了多个同一个接口的 Dubbo Reference,那么 ZooKeeper 中对应的被订阅的服务 consumer 列表中也会存在多个由

本文分析了Dubbo应用由于重复订阅导致的ZooKeeper服务注册失败问题,介绍了问题的原因、排查方法及解决方案。MSE ZooKeeper通过限流机制保护集群稳定,并提供了监控和数据轨迹排查工具,帮助用户提升问题定位效率。
最低0.47元/天 解锁文章
2882

被折叠的 条评论
为什么被折叠?



