如何在Strongloop Loopback框架中为模型配置两个不同的数据源?

Mia*_*eow 6 strongloop loopbackjs

我们的MySQL数据库是用Write集群和Read集群设置的,有没有办法设置Strongloop Loopback Model(例如User)写入MySQL Host A并从MySQL Host B读取?

A.Z*_*.Z. 8

如果要更改单个模型的数据源,请尝试使用attachTo().例如

app.models.YourModel.attachTo(app.dataSources.readDS);
readData();
...
app.models.YourModel.attachTo(app.dataSources.writeDS);
writeData();
Run Code Online (Sandbox Code Playgroud)

您必须在datasources.json文件中定义readDS和writeDS数据源:

{
 "readDS": {
    "host": "hostA",    
    "database": "dbOnHostA",
    "username": "user",
    "password": "password",
    "name": "readDS",
    "connector": "mysql"
  },

 "writeDS": {
    "host": "hostB",
    "database": "dbOnHostB",
    "username": "user",
    "password": "password",
    "name": "writeDS",
    "connector": "mysql"
  }
}
Run Code Online (Sandbox Code Playgroud)

或者您可以动态创建数据源.

  • http://stackoverflow.com/questions/5153492/models-of-concurrency-in-nodejs回答了我上面的问题.因此切换数据库附件是安全的. (2认同)