我正在使用节点 mongodb-native用MongoDB驱动写一个网站。
我对如何管理连接有一些疑问:
仅使用一个 MongoDB 连接来处理所有请求是否足够?是否存在任何性能问题?如果没有,我可以设置一个全局连接以在整个应用程序中使用吗?
如果不是,当请求到达时打开一个新连接,并在处理请求时关闭它,这样可以吗?打开和关闭连接的成本是否昂贵?
我应该使用全局连接池吗?我听说驱动程序有一个本机连接池。这是一个好的选择吗?
如果我使用连接池,应该使用多少个连接?
还有其他我应该注意的事情吗?
Node-mongodb-native 的主要提交者说:
当您的应用程序启动并重复使用时,您打开 do MongoClient.connect 一次
数据库对象。它不是每个 .connect 的单例连接池
创建一个新的连接池。
所以,直接回答你的问题,重用由此产生的数据库对象MongoClient.connect()。这为您提供了池化功能,与每个数据库操作上打开/关闭连接相比,速度将显着提高。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)