Влияние соединения Close против Keep-alive

9

Я настраиваю наши серверы, и из-за характера нашего балансировщика нагрузки мы не можем отправлять заголовки проверки активности соединения. Я пытаюсь определить влияние отправки этих заголовков как на конечного пользователя, так и на сервер. Заметит ли кто-нибудь что-нибудь?

Willemk
источник
sending these headers to both the end-user and the serverА? Можете ли вы быть более конкретным о том, что вы хотите сделать? Откуда будут отправляться заголовки, и как это обойдет ограничение вашего балансировщика нагрузки для HTTP-соединений keep-alive? Для работы keep-alive требуется нечто большее, чем просто заголовок, для этого требуется взаимодействие каждого устройства, участвующего в аспектах HTTP соединения.
Шейн Мэдден
Моя формулировка могла быть немного странной, но сервер явно отправлял заголовки. Я пытаюсь выяснить, как это повлияет на клиента и сервер.
Виллемк
Какой у вас балансировщик нагрузки, который настолько неисправен, что нарушает HTTP Keepalive?
voretaq7
У нас есть правило, которое отправляет подпапку на другую ферму серверов. При просмотре от корня до подпапки Keep-alive сохраняет соединение открытым для исходной фермы серверов, а не отправляет вас на предполагаемую ферму серверов.
Виллемк

Ответы:

9

В первую очередь, орать. Громко. У вашего продавца. За продукт, не поддерживающий более чем десятилетний протокол HTTP / 1.1 .

Результатом отсутствия постоянных соединений является значительное увеличение времени загрузки ресурсов. С keep-alive одно TCP-соединение может использоваться для запроса нескольких ресурсов; без этого новый сеанс TCP (с новым трехсторонним рукопожатием - и, если вы используете SSL, новое согласование SSL) требуется для каждого ресурса на странице.

В практическом плане влияние будет зависеть от количества ресурсов на странице, времени прохождения туда-обратно между клиентом и сервером и количества одновременных запросов, которые браузер клиента делает за один раз (современные браузеры по умолчанию выполняют ~ 6ish) , Много ресурсов на страницу и удаленных клиентов будет означать очень заметное увеличение времени загрузки страницы.

Шейн Мэдден
источник
Я только что проверил, есть около 3 - 6 (в зависимости от того, на какой странице вы находитесь) объектов, загружаемых из этого домена. Это заставляет меня думать, что замедление будет минимальным, так как оно в любом случае открыло бы ~ 6 одновременных соединений.
Виллемк
@Willemk Да, это очень минимально для типичной страницы - замедление было бы гораздо более серьезной проблемой на странице, загружающей десятки объектов. Должно быть просто отлично.
Шейн Мэдден
CDN берет на себя большую часть нагрузки.
Виллемк
1

Поддержание активности значительно повысит производительность как на стороне клиента, так и на стороне сервера. Если возможно, не отключайте его. Балансировщик нагрузки должен работать нормально, если функция keep alive включена.

Мирча Вуцовичи
источник
У вас могут возникнуть проблемы с аутентификацией, если вы используете проверку подлинности NTLM, а средства проверки активности отключены.
Мирча Вутцовичи
Я пытаюсь дать количественную оценку "значительно улучшить". Кроме того, наша ИТ-команда ведет переговоры с поставщиком системы балансировки нагрузки по этому вопросу.
Виллемк