gpt4 book ai didi

node.js - Node.js 中的 Mongodb 集合对象缓存

转载 作者:行者123 更新时间:2023-12-02 13:37:24 27 4
gpt4 key购买 nike

我正在尝试在 Node.js 中实现 MongoDB 数据库的 RESTful(ish) 接口(interface)。根据docs ,基本的习惯用法是这样的:

var mongo = require('mongodb'),
Server = mongo.Server,
Db = mongo.Db;

var server = new Server('localhost', 27017, {auto_reconnect: true});
var db = new Db('exampleDb', server);

db.open(function(err, db) {
if(!err) {
db.collection('test', function(err, collection) {
// do stuff with collection
});
}
});

因此,基本的数据库访问涉及三个对象(服务器、数据库和集合)。我的问题是,其中哪些可以/应该在启动时加载并缓存在某个地方以便为每个 http 请求重用,哪些必须/应该根据请求重新创建。我的假设是服务器和数据库对象长期存在是可以的,但我对集合对象不太确定。

最佳答案

保存所有三件事(服务器连接、数据库和集合)并启动您的应用程序。MongoDB 的 ODM,如 Mongoose自己做吧,以防你有疑问。您可能想使用 async以避免代码嵌套太深。

就我个人而言,我使用 mongo-lite这让我可以做 var db = require('mongo-lite').connect('mongodb://localhost/exampleDb', ['test']);之后我可以摆弄我的集合 db.test。这为我节省了很多样板文件。

关于node.js - Node.js 中的 Mongodb 集合对象缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12652779/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com