【发布时间】:2012-09-11 20:04:10
【问题描述】:
我正在 node.js 中构建一个 SaaS 应用程序,并希望将 MongoDB 用于具有 Mongoose ODM 的数据库。我需要支持成百上千(希望如此)的多个客户,并且每个客户的数据之间没有交互。
我的想法是为每个客户创建一个新数据库和一个保存全球信息的“主”数据库。例如,应用程序只有一个登录页面,所以我想将所有用户/密码信息存储在“主”数据库中,但所有用户的个人资料信息都存储在他们所属的客户数据库中。我觉得这将是一个很好的设计,因为它可以完全隔离每个客户的数据,并且可以轻松地单独备份/恢复一个客户。
我担心从 node.js 连接到多个数据库的性能影响。有谁知道这将如何影响该应用程序,或者对总体架构有什么看法?
额外问题:您是否知道在 SaaS 解决方案中执行相反操作并将所有客户数据存储在单个数据库中(以客户 ID 分隔)的任何审计影响?
【问题讨论】: