我实际上是在开始一个新项目,我需要一些关于数据库设计的建议。我先解释一下。
我将在Ruby On Rails的顶部构建这个应用程序。每个新用户都有自己的网址,例如username.domain.com
。
到目前为止这么好,但数据库怎么样?我应该只使用一个数据库并使用用户会话信息处理所有内容,还是应该为每个用户创建一个新数据库?
有些人建议我在我的桌子名称上使用前缀,例如WP或Drupal会处理多个网站,但我确实发现解决方案DIRTY并且从长远来看无法维护,因为我需要复制所有表格用户。如果我有10.000个用户和100个常用表怎么办?凌乱不?
欢迎每一个想法。
非常感谢
答案 0 :(得分:1)
这实际上取决于用例。这些用户是否分开,您只是提供托管服务?如果是这样,您可能需要单独的数据或者它们是相关的,如在社交网络中并且共享许多共同的功能,并且在它们的表之间会有许多连接。在这种情况下,您可能需要一个数据库。
答案 1 :(得分:1)
Ryan Bates做了多租户Railscast - 它是一个'专业'剧集,需要订阅,但有关于这个主题的很多信息。