【发布时间】:2016-01-21 21:45:52
【问题描述】:
我正在开发一个基于 node/express(技术上为Sails)的服务,该服务将用于检索大量项目。多次调用将需要以 JSON 序列化数组的形式返回数千个项目。
内部节点将是一个基本的控制循环来检索页面中的项目。将检索每个页面,执行一些次要处理,然后将其项目返回给客户端。
目前我正在做一个“存储和转发”的方法,其中每个页面的项目是 concat() 到一个 results 数组,然后一旦检索到所有项目,就会返回结果。
我想做更多的是一种产量或流式方法,其中项目一旦准备好就被添加到响应中——避免需要构建一个大型内存集合并开始发送尽快提供可用数据。
【问题讨论】:
-
这应该可以通过 WebSockets 实现。我认为 WebSockets 是作为可写流实现的,因此您可以为出现的每个块
socket.write(json)。我不确定,也没有时间检查,所以我没有添加它作为答案。
标签: json node.js express streaming sails.js