У меня проблема при получении больших пакетов в Node.js через TCP-соединение.Кажется, что в буфере установлено ограничение около 55 КБ.Когда я получаю большие объемы данных (около 70-80 тыс.), Эти данные разбиваются на части.
Теперь я работал с UDP-сокетами, я знаю, как ожидать on('data', function(){})
событий и как ожидать on('end', function(){})
Когда сообщение, наконец, получено, проблема с TCP заключается в том, что я никогда не получаю событие on('end', function(){})
, сервер (в C #) никогда не отправляет пакет FIN.Это связано с тем, что мне требуется поддерживать работоспособность сокета (мы не хотим его выключать).
Существует ли какой-то способ отправки пакета FIN с C # на узел.js one, без необходимости выключать / закрывать сокет?
Или, альтернативно, это какой-то способ вызвать событие on('end', function(){})
внутри самого узла?
С уважением.
РЕДАКТИРОВАТЬ: Чтобы добавить к вопросу, скажем, например, у меня есть 2 клиента, пытающихся получить информацию через сокет TCP.Один подключается первым и получает огромный запрос (здесь нет проблем с размером).
Но пока этот запрос обрабатывается, другой выполняет тот же запрос, так как соединение TCP осуществляется через узел, онииспользуя тот же сокет.Есть ли способ разграничить запросы?или мне придется настраивать сокет для каждого запроса к TCP-серверу?