【发布时间】:2015-09-05 00:16:34
【问题描述】:
我有一个网络应用程序,可以通过无尽的流(或至少很长的流)处理实时数据。我正在使用“数据”事件来解析此流上的新块数据。问题是当这个流还活着时,我的内存消耗增加了。由于我没有为此流调用 .read 方法,所有数据都存储在等待处理的流缓冲区中。所以,我想问,我可以做些什么来减少我的内存消耗?禁用此流的内部缓冲(我不需要旧数据),从 innerBuffer 或通过 .read 方法工作的 mb 中删除处理过的数据?任何建议表示赞赏。
.on('data', function(chunk) {
parseString(chunk, function (err, result) {
//...
});
})
【问题讨论】:
-
您使用旧式流媒体有什么原因吗?最好使用
read()而不是data事件。 -
并非如此。我很久以前写过这部分,直到生产为止都运行良好