我有两个很大的应用程序部分。主要部分适用于domain.com,另一个适用于admin.domain.com。两者都连接到一个数据库,因为我需要两个数据库相同的数据。
domain.com - localhost:3001和admin.domain.com - localhost:3002。 Nginx在前面用于反向代理。
一切正常,但是当admin.domain.com应用程序更改数据时,我在domain.com上更新此数据时会有很大的延迟
据我了解,我需要启用mongo oplog?是对的吗?怎么做?
upd:当两个用户连接到一个流星实例时,我也没有这么长的延迟,在这种情况下,流星反应性工作正常,并且两个用户的数据更新很快。我的意思是,问题在于流星调查数据库有关任何变化的频率。
答案 0 :(得分:1)
这种情况正在发生,因为Meteor每10秒就会拉动一次数据库,而OPLOG几乎是即时的。即使使用OPLOG,您也可能会遇到缓慢的更新,因为在某些情况下(例如聚合)依赖Mongoldb cpu。
如果您正在使用将URL传递给Mongodb OOLOG服务器:
export MONGO_OPLOG_URL=mongodb://localhost:$MONGO_PORT/local
答案 1 :(得分:0)
查看有关设置oplog tailing and Meteor的帖子。我想它会回答你的问题。它不会减少往返客户端 - >服务器和服务器 - >客户时间,但我不怀疑你的延迟是在哪里。