2017-01-31 8 views
0

Лучше ли держать TCP-сокет открытым в течение длительного времени или повторно устанавливать соединение часто?Длина жизни сокета TCP

Возьмем HTTP в браузере в качестве примера. Лучше ли установить соединение, сделать HTTP-запрос и после получения ответа закрыть его только для того, чтобы открыть новый, когда мы создадим новый запрос? Или: Если вы держите сокет открытым до тех пор, пока этот конкретный пользователь все еще просматривает этот конкретный сайт?

+1

Учитывая, что в режиме реального времени был реализован протокол HTTP для повышения производительности, это должно что-то сказать. Но это зависит от сроков. Открытие TCP-соединения происходит медленно. –

+1

Это зависит от того, что вы подразумеваете под «часто»? Несколько раз в секунду? Раз в день? И сколько данных вы собираетесь переводить каждый раз, когда будете повторно подключаться (если вы идете по этому маршруту)? –

+1

HTTP-конвейеризация была разработана для этого: не открывайте соединение TCP, а не выполняйте соединение для каждого элемента на веб-странице. И даже запросите несколько элементов, прежде чем получать первый запрос, то есть фактическую конвейерную обработку. –

ответ

0

Нет проблем при выходе из гнезда. Для этого предназначен вариант Keep alive. Я оставлю его открытым.

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

  • Нет связанных вопросов^_^