我正在使用 node-mongodb-native用MongoDB驱动来写一个网站。
我有一些关于如何管理连接的问题:
对所有请求只使用一个 MongoDB 连接就足够了吗?是否存在性能问题?如果没有,我可以设置一个全局连接以在整个应用程序中使用吗?
如果不是,我在请求到达时打开一个新连接,并在处理请求时关闭它是不是很好?打开和关闭连接是否昂贵?
我应该使用全局连接池吗?我听说驱动程序有一个 native 连接池。这是一个不错的选择吗?
如果我使用连接池,应该使用多少个连接?
还有其他需要注意的地方吗?
最佳答案
The primary committer to node-mongodb-native says :
You open do MongoClient.connect once when your app boots up and reuse the db object. It's not a singleton connection pool each .connect creates a new connection pool.
所以,要直接回答您的问题,重用 MongoClient.connect()
产生的 db 对象。这为您提供了池化,并且与在每个数据库操作上打开/关闭连接相比,将显着提高速度。
关于node.js - 如何在 Node.js Web 应用程序中管理 MongoDB 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10656574/