HTTP pipelining

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
HTTP
Постоянное соединение · HTTP pipelining · Сжатие[en] · HTTPS · HTTP/2
Методы
OPTIONS · GET · HEAD · POST · PUT · DELETE · TRACE · CONNECT · PATCH
Заголовки
Cookie · ETag · Referer
HTTP location
Do Not Track[en]
X-Forwarded-For[en]
Коды состояния
1xx: Informational
2xx: Success
3xx: Redirection
4xx: Client Error (404 Not Found)
5xx: Server Error

HTTP pipelining (переводится как Конвейерная обработка HTTP) — технология, которая позволяет передавать на сервер сразу несколько запросов в одном соединении, не ожидая соответствующих ответов. Конвейерная обработка поддерживается только в HTTP/1.1, но не в 1.0.

Браузер Microsoft Internet Explorer не поддерживает HTTP pipelining, а в Mozilla Firefox она по умолчанию отключена.

Положительное действие[править | править вики-текст]

Включение HTTP pipelining должно увеличить скорость загрузки страниц на медленных каналах и уменьшить количество TCP/IP пакетов, то есть нагрузку на сеть. Наибольшую выгоду от Pipelining получат те, у кого время отклика составляет существенную часть от общего времени коннекта (это спутниковый Интернет, DSL и Dial-Up).

Отрицательное действие[править | править вики-текст]

Pipelining существенно повышает нагрузку на сервер, что может привести к DoS. Поэтому использование незнакомыми с принципами pipelining пользователями[кем?] (например, с помощью Fasterfox для Firefox) не рекомендуется.

Поскольку ответы сервер должен давать в строго той же последовательности как получались запросы, один затормозивший запрос тормозит все последующие в "пачке". Этого не будет при отдаче статики - но она и так кешируется.

Ссылки[править | править вики-текст]