我可以在同一个 sails 项目中有两个 mongodb 连接吗?

Can I have two mongodb connections in the same sails project?

我有一个 sails 应用程序,我想知道我是否可以使用两个 mongodb 连接(同一主机上的两个不同数据库,密码不同)。我有两个模型,我希望每个模型都与不同的 mongodb

相关

单个 Javascript 运行时引擎可以与 MongoDB 建立 2 个或更多客户端连接。每个连接都将有一个单独的连接池到其目标服务器。

是的,这是可能的。

首先要做的是为配置文件夹中 connections.js 文件中的每个 mongoDB 添加一个连接,并确保它们具有不同的名称。

例如

someMongodbServer1: {
    adapter: 'sails-mongo',
    host: 'localhost',
    port: 27017,
    user: 'username', //optional
    password: 'password', //optional
    database: 'your_mongo_db_name_here' //optional
},

someMongodbServer2: {
    adapter: 'sails-mongo',
    host: 'localhost',
    port: 27017,
    user: 'username', //optional
    password: 'password', //optional
    database: 'your_mongo_db_name_here' //optional
},

然后在每个模型中,您可以设置各自的连接。例如,如果您将用户数据存储在一个数据库中,将图像存储在另一个数据库中。

您可以像这样在用户模型中设置连接:

module.exports = {
    connection : 'someMongodbServer1',
    attributes: {...

并且在使用其他连接的图像模型中:

module.exports = {
    connection : 'someMongodbServer2',
    attributes: {...