我正在构建一个将部署在多个服务器上的Rails应用程序,每个服务器都使用自己的数据库。这些应用程序中的大多数数据都是该应用程序的唯一且私有的。
我希望能够在一个“爸爸应用”中共享每个应用中的所有Posts
,同时保持其余数据的私密性。这个“爸爸应用”将能够查询并显示从所有应用中整理的所有posts
。
我有两个想法可以做到这一点:
Posts
设置单独的远程数据库。这似乎可能是性能问题。Posts
。我不确定上述任何一种方法是否都是此问题的最佳解决方案。
实现这一目标的最佳方式是什么?
答案 0 :(得分:1)
我认为cron方法很好。但是,为什么不公开每个应用程序响应/posts.json?since=的JSON API,而不是使用直接数据库连接。这样您就可以获取所有最新帖子来更新“爸爸应用”
您可能还需要考虑使用引擎来实现Post / API,以便您可以在每个rails应用程序之间共享。
另一种方法是让每个应用程序在发生时向“爸爸应用”提交帖子(例如通过延迟工作)。