多个Rails应用,单个MySQL数据库

9

我打算为site.com、api.site.com和admin.site.com各创建一个Rails应用程序。所有应用程序都将从同一个MySQL数据库中访问相同的表格。应用程序和数据库在同一服务器上运行。

对于上述访问场景,是否有任何需要我关注的Rails、ActiveRecord或MySQL设置?谢谢。

运行环境:Rails 2.3.5、MySQL 5.0、Nginx、Passenger、RubyEE

2个回答

13

这种配置往往很难维护。在每个应用程序中,您都需要保持schema.rb和模型同步,以便使用相同的数据库。这意味着有很多重复。

这可能不是一个好主意。相反,您可能希望设计应用程序以满足以下场景之一:

  • 一个Rails应用程序处理site.com、api.site.com和admin.site.com(为什么需要单独的应用程序?)
  • 多个Rails应用程序,但只有一个与数据库交互。其他应用程序使用主应用程序API(相当复杂)
  • 不同的应用程序具有不同的目的(例如,您可能希望为api.site.com使用Sinatra + Datamapper)

第一种选项在大多数情况下可能是最好的选择。


我同意第一个观点,你可以在一个应用程序中拥有所有功能。 - Adnan
我会重新考虑,第一个选项可能更好。谢谢。 - Gaius Parx

4

我在这里回答了类似的问题您可以这样做,有时是合理的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接