Node.jsのMongoDBデータベースにRESTful(ish)インターフェースを実装しようとしています。ドキュメントによると、基本的なイディオムは次のようなものです。
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
});
}
});
したがって、基本的なDBアクセスに関係する3つのオブジェクト(サーバー、データベース、およびコレクション)があります。私の質問は、これらのうちどれを起動時にロードしてどこかにキャッシュし、すべてのhttpリクエストで再利用できるか、そしてどれをリクエストごとに再作成する必要があるかということです。私の仮定では、サーバーオブジェクトとデータベースオブジェクトが長持ちすることは問題ありませんが、コレクションオブジェクトについてはよくわかりません。