Два цента из эксперимента ...
Мое первое клиент / серверное приложение TCP / IP использовало новое соединение и новый поток для каждого запроса ... лет назад ...
* 1004Затем я обнаружил (используя ProcessExplorer), что он потребляет некоторые сетевые ресурсы, потому что все закрытые соединения действительно не разрушены, но остаются в определенном состоянии в течение некоторого времени.Было создано много потоков ...
У меня даже были некоторые проблемы с подключением из-за большого количества параллельных запросов: мне не хватало портов на моем сервере!
Итак Iпереписал его , следуя схеме HTTP / 1.1 и функции KeepAlive
.Это гораздо эффективнее, использует небольшое количество потоков, и ProcessExplorer нравится мой новый сервер.И я никогда не выбегаю из порта снова.:)
Если клиент должен быть выключен, я буду использовать ThreadPool, чтобы, по крайней мере, не создавать поток для каждого клиента ...
Короче: если вы можетеоставьте ваши клиентские подключения живыми в течение нескольких минут.