与节点进行非保持连接的方法?

时间:2016-07-16 22:59:19

标签: node.js

我正在尝试构建一个演示分布式应用程序,该应用程序显示如何在许多不同容器之间进行负载平衡。该应用程序工作正常,但我试图在不同的容器之间强制刷新,Chrome / Firefox正在保持连接打开。我认为用.close()强制关闭连接会起作用:

https://nodejs.org/api/http.html#http_request_end_data_encoding_callback

但是这会导致服务器关闭。有没有办法告诉Chrome / Firefox不要在不关闭服务器的情况下保持打开与Node中服务器的连接?

1 个答案:

答案 0 :(得分:2)

很好的问题。据我所知,没有正常的直接方法来禁用内置HTTP服务器的HTTP keep-alive。你可能能够解决这个问题。请求对象具有using (var db = new IncludeDatabase()) { return db.SubFolders .Include(x => x.Folder) .FindAll().ToList(); } 属性,该属性将包含底层套接字。您可以保存对连接的引用,并在响应上调用connection后将其关闭。然而,这并不是一个好主意。客户端可以使用流水线操作,在前一个请求完成之前发送多个请求。

最好的办法就是将其添加到您的回复标题中:

end()

这将通知客户端不要保持连接打开。