我正在使用高地来处理背压。我的代码是:
const pipeline = [{
$match: { 'published': true, status: 'Approved' }
}];
const cursor = UserModel.aggregate(pipeline)
.cursor().exec();
// iterating over each hospitality one by one
highland(cursor)
.map((doc) => {
// some code
return doc;
})
.map((doc) => {
// some code
return doc;
})
.map((doc) => {
// some code
return doc;
})
.errors(function (err) {
winston.error('error', err);
})
.done(() => {
winston.info('JOB: done');
});
我希望获取一份文档,然后逐一处理地图的流。
我不确定这是否会处理背压,因为高地医生说:
请参阅高地文档中的背压部分。
某些流(例如基于事件的流)无法暂停。在这些情况下,数据会被缓冲,直到消费者准备好处理它。
如果这不能处理背压,请提出任何其他方式!