【发布时间】:2015-01-27 03:19:42
【问题描述】:
以前有人问过这种问题: How can I share MongoDB collections between Meteor apps?
但是,答案并不明确。
我需要将 Meteor 公共应用和管理应用分开(出于多种原因,但主要是安全和代码管理)。
使用公认的答案:export MONGO_URL=mongodb://localhost:3002/meteor 似乎是合理的,但在另一个用户“matthias”下方指出“从另一个应用程序连接时,不会传输触发模型更改的事件跨这些应用程序。mongoDB 实例本身当然不知道这一点。”
如何触发“其他”流星应用程序以重新评估来自 MongoDB 的事件/触发器?意思很简单,如果我在管理模块中进行更改,我如何让公共站点反映这些更改?假设这就是意思。还有其他功能会被这种方法丢失吗?
谢谢
【问题讨论】:
-
你可以通过 mongo 控制台对数据库进行更改,Meteor 应用程序仍然会拾取它,如果它通过 oplog tailing 观察数据库,它会非常快。
-
所以你是说跨应用更新不是问题?我的印象是每个 Meteor App 都与它的 MongoDB 实例密切相关。不确定其他 Meteor 应用程序会“监听”“其他”mongo 集合是否有意义。
-
这不是问题。 Mongodb 实例与应用程序无关。只要他们通过 MONGO_URL 共享同一个实例,所有魔法都会按照您希望的方式发生。