2016-11-27 39 views
1

在windows 10中,在哪裏可以爲nodejs設置最大連接(使用express'get)?它與Linux中的最大文件(描述符)設置有關嗎?是否有該版本的Windows版本?最好在nodejs中設置,以便在遷移到unix時兼容?nodejs express windows max connections設置

我懷疑負載測試模塊提供,因爲這個設置時超過2000個併發連接的攻擊,使用快遞,並保持在一個隊列連接稍後處理我的服務器程序的錯誤。 Loadtest通常完成200個併發連接(在命令行中輸入-c 200)。另外,當我沒有保持隊列中的連接,並且如果get中的操作很簡單("response.end('hello world')"),它不會給-c 2000一個錯誤,也許它會在其他啓動之前完成一項工作,所以它不是真正的2000個併發,只有排隊的版本有2000個併發?

我沒有使用http模塊,但我正在處理從客戶端發送的xlmhttprequest服務器端express moduleget函數。

也許桌面版本的Windows操作系統是沒有考慮到服務器的應用程序開發,因此不會有最大連接數的設置,最大文件訪問和相關變量中有被硬編碼?

回答

1

要回答你的問題的一部分,爲最大打開的文件有_setmaxstdio,請參閱:

也許你可以寫,改變這一點,並開始您的節點項目的包裝。

至於最大的開放連接的一般性問題,這是我發現的一些老版本的Windows:

它談論改變的配置:

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] 

TcpNumConnections = 0x00fffffe(缺省值= 16777214)

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] 

MaxUserPort的= 5000(缺省值= 5000,最大值= 65534)

也見其它相關於上述鏈路的參數。我不知道在更新版本的Windows中配置值的名稱是否更改,但如果增加打開的文件限制是不夠的,我會搜索HKEY_LOCAL_MACHINE System CurrentControlSet Services Tcpip Parameters

爲了比較,here is how I increase the number of concurrent Node/Express connection in Linux

+0

更改了註冊表中的參數並重新啓動,但它們是一樣的。禁用文件讀取(fs模塊)以隔離連接。還是一樣。最大打開文件是否與網絡有關? –

+0

至少我瞭解到問題不是最大連接設置。 –