首页 > 解决方案 > mongodb 服务器监控和发现有什么新功能?旧的有什么限制?他们现在是如何克服的?

问题描述

我正在尝试更新我的 node-mongodb-native,但它要求我添加 useUnifiedTopology 选项。我只想知道旧的监控工具有哪些问题以及它们是如何解决的。

标签: mongodb

解决方案


useUnifiedTopology选项是在 MongoDB 3.2.1 Node.js 驱动程序中引入的,并将成为今年晚些时候 4.x 驱动程序版本中的默认行为。这代表对节点驱动程序的服务器发现和监控 (SDAM) 实现的更改,而不是对MongoDB SDAM 规范的更改。

3.2.1 版本说明包含更改的概述:

在这个版本中,我们非常高兴地宣布完全重写驱动程序“拓扑”层的即时可用性。这是负责服务器选择、服务器发现和监控等事情的驱动程序的核心大脑。这项工作将三个现有的拓扑概念(Mongos、、ReplSetServer)组合成一个类型Topology。新Topology类型使用相同的机制来表示所有三种类型,大大提高了我们维护代码的能力,并减少了重复错误的机会。

Topology 类不再使用回调存储,而是依赖服务器选择循环来执行操作。这意味着失败的操作将更快地失败,并具有更准确的堆栈跟踪和有关失败的详细信息。它通常可以更容易地推断每次执行操作时驱动程序正在做什么。

在较新的 3.x 节点驱动程序版本中也有一些需要该useUnifiedTopology选项的功能,例如v3.3.0中引入的用于分片集群的 SRV 轮询。


推荐阅读