























2 Mithril 2024 年 1 月 29 日MongoDB 有 Change Stream ,你可以理解为 bin log 。实际上是一部分的 oplog 。 他有个 token ,你可以拿到从这个 token 以后的所有数据库变更。 但实际上是基于 oplog 的,你如果太长时间没同步,或者那个 oplog 设置很少,操作太多的话可能就给顶掉了。如果你数据的变更不太多,或者你可以大部分时间实时同步下来,那就没问题。 也有很多方案是基于全量扫描然后自己找变更的,你如果数据量不太大倒还行,数据量大了这么搞相当于增加了额外的负担。 或者你数据库本身设计的很好,每个记录都有变更时间,那你每次只刷上次变更以后的就行,比刷那个 change stream 还要靠谱一些。只是删除需要额外处理,比如并不真的删除数据,而是给个 flag ,或者移到另一个 collection 里,那用这个方法倒也能同步了。 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。