我正在使用node.js創建用於向客戶端發送服務器發送的事件的服務器。我在Windows 7機器上運行服務器。node.js服務器限制新連接
我連接的方式是使用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);
}
,我在我的測試代碼做了很多次。
感謝您的幫助!
Inb4它是http客戶端的默認連接限制或文件描述數量的系統範圍限制 –
這個節點的版本是多少?你關閉HTTP請求並打開一個新的TCP或者只是維護一個長池HTTP請求?請添加您的設置的更多細節 – JohnKiller
@JohnKiller,我正在使用v0.12.2。我發送請求,打開一個新的TCP連接並維護它。據我所知,客戶端終止連接,因爲我有其他客戶端連接(例如通過郵遞員),並且這些連接永遠不會關閉。 – Guiness