我正在尝试编写一段代码:
我试图实现的是,一旦响应的相应部分可用,就应该写出输出。我也不想等待整个响应到位,因为这将耗尽内存。我希望尽快开始流输出并尽可能少地保留内存。
什么是开始的好方法?
我看了一下aleph和lamina,还有async.http.client。似乎这些工具可以帮助我,但我很难弄清楚如何使用一段代码来对两个Web服务中的响应进行相同的响应。
答案 0 :(得分:2)
你可以做这样的事情(使用aleph - 引擎盖下使用了lamina channel抽象)。
sync-http-request
创建2 http请求:body
。例如:https://github.com/ztellman/aleph/wiki/Consuming-and-Broadcasting-a-Twitter-Stream :body
是一个椎板通道,使用lamina join
方法将2个通道连接到一个通道join
致电的结果)。现在,订阅回调将在它到达任一通道时立即收到每个JSON对象,您可以拥有一个本地atom
,这是一个地图,其中键是您想要组合的值2个通道的结果和值是一个向量,它将存储同一个键的值。所以这将是这样的:
atom
地图是否已有密钥[item]
,即现在正在接收的一个项目的向量。