Rails数据库设计和多个子域

时间:2013-09-15 22:48:59

标签: ruby-on-rails database subdomain

我实际上是在开始一个新项目,我需要一些关于数据库设计的建议。我先解释一下。

我将在Ruby On Rails的顶部构建这个应用程序。每个新用户都有自己的网址,例如username.domain.com

到目前为止这么好,但数据库怎么样?我应该只使用一个数据库并使用用户会话信息处理所有内容,还是应该为每个用户创建一个新数据库?

有些人建议我在我的桌子名称上使用前缀,例如WP或Drupal会处理多个网站,但我确实发现解决方案DIRTY并且从长远来看无法维护,因为我需要复制所有表格用户。如果我有10.000个用户和100个常用表怎么办?凌乱不?

欢迎每一个想法。

非常感谢

2 个答案:

答案 0 :(得分:1)

这实际上取决于用例。这些用户是否分开,您只是提供托管服务?如果是这样,您可能需要单独的数据或者它们是相关的,如在社交网络中并且共享许多共同的功能,并且在它们的表之间会有许多连接。在这种情况下,您可能需要一个数据库。

答案 1 :(得分:1)

Ryan Bates做了多租户Railscast - 它是一个'专业'剧集,需要订阅,但有关于这个主题的很多信息。

http://railscasts.com/episodes/388-multitenancy-with-scopes