开发者社区> 问答> 正文

为什么Watcher与ZNode的关系条数会达到1亿?

为什么Watcher与ZNode的关系条数会达到1亿?

展开
收起
夹心789 2024-07-04 12:17:25 3 0
2 条回答
写回答
取消 提交回答
  • 异常的 ZK-Node。ZNode 数量大概有 20W,Watcher 数量是5000。而 Watcher 与 ZNode 的关系条数达到了 1 亿。
    如果存储每条关系的需要 1 个 HashMap&Node(32Byte),由于是两个关系表,double 一下。那么其它都不要计算,光是这个“壳”,就需要 210000^232/1024^3 = 5.9GB 的无效内存开销。

    image.png

    参考文档https://developer.aliyun.com/article/1486779

    2024-07-05 09:21:06
    赞同 1 展开评论 打赏
  • Watcher与ZNode的关系条数达到1亿,主要是因为在这个异常的ZK-Node中,ZNode和Watcher的数量都非常大,并且存在大量的订阅关系。每一个Watcher可能订阅了大量的ZNode,而每一个ZNode又可能被多个Watcher订阅,这种复杂的订阅关系导致了关系条数的剧增。

    2024-07-04 13:48:19
    赞同 1 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载