2016-11-27 7 views
1

Где установить максимальные соединения для nodejs (для использования экспресс-get) в окнах 10? Связано ли это с настройками максимальных файлов (дескрипторов) в Linux? Есть ли версия Windows этого параметра? Предпочтительно настройка в nodejs, поэтому она будет совместима при переносе в unix?nodejs express max Максимальное количество подключений

Я подозреваю, что модуль loadtest дает ошибку из-за этого параметра, когда более 2000 одновременных подключений атакуют мою серверную программу, которая использует экспресс и поддерживает соединения в очереди для последующей обработки. Loadtest обычно заканчивается для 200 одновременных соединений (-c 200 в командной строке). Также, когда я не поддерживаю связи в очереди, и если операция в get проста ("response.end('hello world')"), она не дает ошибку для -c 2000, возможно, она заканчивает работу перед другими запусками, поэтому ее не 2000 одновременно работает, только в очереди имеет параллелизм 2000 года?

Я не использую http-модуль, но я обрабатываю xlmhttprequest, отправленный с клиентов на serveride express moduleget.

Возможно, настольная версия windows os не была разработана с учетом серверных приложений, поэтому у нее нет настроек для максимальных подключений, максимальный доступ к файлам и связанные с ними переменные были жестко запрограммированы в нем?

ответ

1

Чтобы ответить на одну часть вашего вопроса, для максимального открытого файла есть _setmaxstdio см:

Может быть, вы можете написать оболочку, которая изменяет это и запускает программу узла.

Что касается общего вопроса о максимальных открытых соединений, это то, что я нашел о некоторых старых Windows:

Это говорит о смене конфиг:

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

TcpNumConnections = 0x00fffffe (по умолчанию = 16 777 214)

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

MaxUserPort = 5000 (по умолчанию = 5000, Max = 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

По крайней мере, я узнал, что проблема не в настройках максимальных подключений. –

Смежные вопросы