gpt4 book ai didi

javascript - node.js 服务器限制新连接

转载 作者:可可西里 更新时间:2023-11-01 02:40:51 27 4
gpt4 key购买 nike

我正在使用 node.js 创建一个服务器,用于将服务器发送的事件发送到客户端。我在 Windows 7 机器上运行服务器。

我的连接方式是使用 apache httpclient 发送 HTTP get 请求,建立 TCP 连接并从服务器接收事件。我注意到,在我同时连接 11 个客户端后,之前的连接关闭。

Node.js 有限制吗?还是这个系统特定?我一直在用谷歌搜索这个,但找不到任何东西。

这是我发送的请求的示例代码:

HttpClient httpClient = HttpClientBuilder.create().build(); 

String domain = "...";

HttpUriRequest httpGet = new HttpGet(domain); String encoding = "..."

httpGet.setHeader(new BasicHeader("Authorization", "Basic " + encoding));
httpGet.setHeader(new BasicHeader("Content-Type", "text/event-stream"));

HttpResponse resp = httpClient.execute(httpGet);
HttpEntity entity = resp.getEntity();

if (resp.getStatusLine().getStatusCode() != 200){ String
responseString = EntityUtils.toString(entity, "UTF-8");
System.out.println(responseString);
}

我在我的测试代码中多次这样做。

感谢您的帮助!

最佳答案

自 node js v0.12 以来,http.globalAgent.maxSockets 已设置为 Infinity,因此这是客户端问题。

这应该为客户端设置限制:

http.globalAgent.maxSockets = 1000;

另一种选择是将 Agent 对象传递给 http 请求。看看这个其他问题:How to set maximum http client connections in Node.js

关于javascript - node.js 服务器限制新连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31145276/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com