首页 > 解决方案 > mongodb更改流,操作更新,如何解决获取先前值问题

问题描述

我知道mongodb没有实现这个功能。我在想什么是实现这一目标的最佳方法。

使用缓存服务?该方法可行,但有一个问题,当您观看的查询太大时,就像整个集合一样,您将永远不会拥有第一个之前的值,因为您只有在第一次更改出现在手表上时才开始缓存。

  1. 服务开始观看。
  2. 收到对象 id 1,没有缓存之前的更改,缓存值。
  3. 接收到的对象id 1,缓存之前的变化,可以做比较,缓存值

我在这里看到另一个问题,如果我有 2 个观察者可能会接收有关同一对象的信息,这将导致同步问题,因为一个进程可能会更新缓存,而第二个进程已经接收到错误的数据,嗯。我的意思是第二个进程可能处于缓存的先前值已​​经与 mongodb 更改流中的值相同的情况。

我也在考虑 mongodb 副本,但不确定是否可以用它解决问题。

最好的,伊戈尔

标签: mongodbfirebase-realtime-databasetriggers

解决方案


推荐阅读