使用WebSocket回退时的内存流失(使用XMLHttpRequest进行HTTP流式传输)

时间:2017-04-27 10:10:41

标签: javascript websocket xmlhttprequest http-streaming forever-frame

在使用HTTP流式传输的WebSocket回退中,我可以看到每次XmlHttpRequest#responseText更改时都会调用readystate(并且> = 3)。

WHATWG生活标准说the text response is

  

...使用回退编码字符集在接收的字节上运行decode的结果。

我认为这意味着每次{{1}创建一个新的字符串,其大小对应于自HTTP流传输请求以来收到的UTF-16 所有数据的编码结果以这种方式改变。

我已经观察到周期性(即HTTP流式传输响应缓冲区更大的周期 - 它会定期重置)使用此技术时,JavaScript堆中会有大量内存流失,每秒大约有五封消息入站到客户端认为它与上述方法有关。

这听起来合理吗?

有没有人发现任何减少这种HTTP流技术对内存子系统影响的技术(例如缩短每个HTTP流连接的生命周期)?

0 个答案:

没有答案