条件
有客户服务器和管理服务器。
两个服务器共享相同的mongodb和相同的数据库,但项目是分离的Meteor项目。
当管理服务器将批量数据(超过7000万)插入“A集合”时,在管理服务器插入数据的过程中,客户服务器的cpu/内存会非常高。
因此,我可以假设客户服务器通过管理服务器获取插入的oplog数据。
问题
我不明白的是,为什么客户服务器要分叉或同步oplog数据,即使客户服务器中没有'A collection‘声明。我期望当管理服务器插入数据时,客户服务器永远不会获取任何东西,因为“数据在客户服务器中不会被删除”。
所以我想知道Meteor项目是否正在同步oplog,即使该项目没有在同一数据库上声明集合。还是有其他原因呢?
发布于 2020-12-01 11:12:32
自行解决
我在Meteor forum上得到了合适的答案。
简而言之,这是共享数据库模型中的正常反应,因为两个项目完全共享它们的oplog。
因此,为了避免这种情况,请在安装时使用redis-oplog-package来控制“write oplog”。
https://stackoverflow.com/questions/65044255
复制相似问题