我正在为客户构建一个新的 Rails 应用程序。他们已经有一个单独的 Rails 应用程序来管理用户(使用所有标准的设计字段),并且不希望在两个应用程序中都维护用户,这是完全有意义的。
我可以使用 database.yml 连接到他们的远程数据库以获取连接详细信息,并在我的用户模型中建立连接:它可以工作,虽然有点慢(通过公共互联网)。我担心依赖这个远程数据库来查询很多东西会严重降低我的应用程序的速度。我也无法与远程数据库进行连接。
我的想法是在我的应用程序中复制用户表,并有一个每隔几个小时(甚至更频繁)运行一次的 cron 作业,以使我的表与“主”保持同步。
有什么理由不这样做吗?从设计的角度来看,这是一个糟糕的想法吗?
我应该提到我的数据库是 postgres 而远程数据库是 mysql。我也开始阅读 DbCharmer gem ( http://dbcharmer.net/ ),但我还没有完全理解它。
- 编辑: -
我还应该提到,我需要从远程数据库中读取其他表,而不仅仅是用户表。