我有一个node.js (和快递)产品管理应用程序,它连接到包含产品数据的mongodb数据库,并使用Stormpath进行用户管理。
这一切都很好,但现在我需要这个应用程序能够连接到两个不同的数据库--一个用于英国产品,另一个用于美国产品。用户需要能够随时在英国和美国的数据库之间切换。
我只需添加一个按钮就可以完成整个应用程序的工作,该按钮断开一个db,并将(使用MongoClient)连接到另一个应用程序,但我需要的是在任何时候都有两个连接,并根据用户选择的国家选择使用哪个连接,或者每个用户有一个db连接。
做这种事情的正确方法是哪一种?
发布于 2015-06-18 13:01:20
我认为您可以生成2个活动mongodb连接,这是可能的。根据- mongodb文档的npm模块
var
mongo = require('mongodb'),
MongoClient1 = mongo.MongoClient,
MongoClient2 = mongo.MongoClient;
MongoClient1.connect('mongodb://somehost1:27017/db1', function(err, db) {
//do things
});
MongoClient2.connect('mongodb://somehost2:27017/db2', function(err, db) {
//do things
});无法将此数据库客户端注入到请求中。重新连接数据库可能需要时间,用户可能会体验到糟糕的性能。我认为最好总是保持两个活跃的联系。
https://stackoverflow.com/questions/30915928
复制相似问题