MongoDB - 打开和关闭连接 - 建议良好实践

2024-05-14

我通过 Node.js 的驱动程序使用 MongoDB

我通常打开一个连接(通过connect()方法)任何时候我需要执行操作并关闭它(通过close()方法)一旦我完成。在我的程序中,我自然需要对 MongoDB 执行许多操作,因此我会多次打开和关闭连接。

我想知道这是否是一个好的做法,或者是否最好在执行第一个操作时打开连接,将其存储在变量中,并在程序结束时将已打开的连接用于以下操作关闭它。

非常感谢任何建议。


最佳实践是打开连接一次,将其存储在变量中并在最后关闭它。 MongoDB 明确推荐这样做。这就是为什么打开和关闭连接是 MongoDB API 的一部分,而不是针对每个查询自动发生的原因。

每个查询的打开和关闭连接都会在性能(CPU + 延迟)、网络流量、内存管理(创建和删除对象)方面引入显着的开销,不仅对客户端而且对服务器本身也会产生影响其他客户。

关于术语联系:在像Java这样的一些驱动程序中,实际创建并存储在变量中的并不是物理连接,而是一个MongoClient实例。从抽象 (API) 的角度来看,它看起来像是一个连接,但它实际上封装了实际的物理连接,并向用户隐藏了复杂性。

创建MongoClient仅实例一次,对于支持此功能的驱动程序,也将使您受益连接池驱动程序会为您并行维护活动连接,因此您也只需创建一个MongoClient跨多个线程的实例。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MongoDB - 打开和关闭连接 - 建议良好实践 的相关文章

随机推荐