gpt4 book ai didi

node.js - 环回事件流跟踪服务器端模型中的更改

转载 作者:太空宇宙 更新时间:2023-11-04 02:08:53 25 4
gpt4 key购买 nike

我陷入了一种情况,我想同步两个 mongoDB,一个位于本地计算机,第二个位于远程计算机(在 mlab 沙箱上)。为了同步,我正在做:

首先我使用 mongodump 转储发生更改的集合接下来,我将使用 mongorestore 在远程 MongoDB 上恢复该集合。

但是我面临两个问题。

首先是如何更新远程 mongoDB 上的集合。例如:在更改集合时,我应该替换远程端的整个集合还是使用其他方式?以及执行此操作的最佳方法是什么。

第二个问题是如何检测集合中的更改。或在整个数据库中。我正在使用环回框架和事件流 npm 模块将更改发送到客户端。但我无法读取服务器端的更改流。

我的 server\boot\realtime.js 是:

var es = require('event-stream');
var sync = require('../sync');

module.exports = function(app) {

var completeOrder = app.models.completeOrder;

completeOrder.createChangeStream(function(err, changes) {

sync('completeOrder',function(data){

console.log(data);
},function(err){

console.log(err);
});
changes.pipe(es.stringify()).pipe(process.stdout);
});

}

最佳答案

关于第二个问题,当底层数据库中的数据发生变化时,LoopBack 不会发送事件,而仅当模型发生变化时才发送事件。 Mongo 3.6 提供更改流功能,您可以使用它来触发模型更改/执行您的功能。

关于node.js - 环回事件流跟踪服务器端模型中的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43138122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com