【问题标题】:Store customer data in two databases将客户数据存储在两个数据库中
【发布时间】:2019-07-16 11:46:19
【问题描述】:

我想将客户数据从前端存储到数据库。现在,有两个数据库Master 和Child。我想知道如何将该文档存储到子数据库和主数据库中。我在前端使用 MongoDB 数据库、后端 Node Express 和 angular。如何在前端或后端解决这个问题?

【问题讨论】:

  • 按照他们的建议使用 mongodb 副本集,而不是主从架构。
  • 我认为副本集是针对同一个数据库的。上面忘记说了,我有两个不同架构的数据库。
  • 永远不要将你的数据库暴露给前端。从 Express 服务器公开一个 API,以便 Angular 发布数据。使用 Express 服务器将数据保存到您的数据库中。
  • 我们正在使用 API。但需要这些 api 在两个单独的服务器上的两个单独的数据库上工作。

标签: node.js angularjs mongodb express mongoose


【解决方案1】:

如果您希望在 Master 内发生变化时有效地将写入复制到 Child 数据库,这可能是 Change Streams 的一个很好的用例。

这是您应该在后端处理的事情,因为您实际上是在发生更改时触发操作。有关如何使用 NodeJs 执行此操作的好文章,请参阅 this Medium post

【讨论】:

  • 更改流是每次写入时发生的事件。 OP 需要一个整体解决方案来写入特定的主节点并从辅助节点读取。此外,如果您需要扩展辅助节点,更改流也不是一个好的解决方案。
猜你喜欢
  • 2022-12-13
  • 2016-07-25
  • 2022-08-14
  • 1970-01-01
  • 2017-02-23
  • 2016-06-21
  • 2016-04-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多