Обмен технологиями

Разница между HTTP1.0 и HTTP1.1

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

постоянное соединение

HTTP/1.1Постоянные соединения поддерживаются по умолчанию, что позволяет отправлять несколько HTTP-запросов и ответов по TCP-соединению, что снижает затраты на установление и закрытие соединения.

иHTTP/1.0По умолчанию установлено короткое соединение. Для каждого запроса необходимо установить TCP-соединение. Вы можете пройти.Connection: keep-aliveзаголовок для реализации постоянных соединений.Connection: keep-alive Цель — сообщить серверу и клиенту, что TCP-соединение между ними должно поддерживаться в рабочем состоянии, чтобы его можно было использовать повторно, а не закрывать сразу после отправки ответа. Эта функция была представлена ​​в HTTP/1.0 и стала поведением по умолчанию в HTTP/1.1.

Трубопровод

HTTP/1.1Поддерживает конвейерную обработку (не включена по умолчанию), позволяя клиенту отправлять несколько запросов до того, как поступит ответ на первый запрос, что может сократить время ожидания и повысить эффективность.

HTTP/1.0 не поддерживает конвейерную обработку.

контроль кэша

HTTP1.0В основном используетсяIf-Modified-Since/Expiresкак критерий кэширования суждений

HTTP1.1Представлены дополнительные стратегии управления кэшем, такие какEtag / If-None-MatchПодождите, пока появятся дополнительные необязательные заголовки кэша для управления стратегией кэширования.

Обработка ошибок:

HTTP/1.1Добавлено несколько новых кодов состояния HTTP, например100 Continue, используемый для улучшения обработки ошибок и промежуточных ответов на запросы.

После получения ответа 100 Continue клиент должен продолжить отправку тела запроса.Если сервер получает сообщение, содержащееExpect: 100-continueПосле принятия решения не продолжать обработку запроса (например, если информация заголовка запроса указывает на то, что запрос не может быть принят), сервер должен вернуть код состояния ошибки (например, 400 Bad Request) вместо 100 Continue.

Hostголова:

HTTP/1.1представилHost заголовок, который позволяет клиенту указать запрошенное имя хоста, что позволяет размещать несколько доменных имен на одном сервере. Каждое доменное имя может быть сопоставлено с другим ресурсом или службой на сервере. HTTP/1.0 не имеет этого поля заголовка.

Оптимизация пропускной способности:

HTTP1.0, существуют некоторые явления потери пропускной способности. Например, клиенту нужна только часть объекта, а сервер отправляет весь объект и не поддерживает функцию возобновления.HTTP1.1вводится в заголовок запросаrangeполе заголовка, которое позволяет запросить только определенную часть ресурса, то есть код возврата имеет вид206(Partial Content)