К списку
HTTP, REST и APIJuniorСкрининг с HR

Ключевые отличия между HTTP/1.0 и HTTP/2.0 в веб-запросах

Краткий ответ

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

Развёрнуто

Краткий ответ

HTTP/1.0 устанавливает новое соединение для каждого запроса и передает данные в текстовом формате, что увеличивает задержки. HTTP/2.0 использует бинарный формат, поддерживает одновременную передачу нескольких запросов через одно соединение и оптимизирует заголовки, улучшая производительность.


Как это работает

HTTP/1.0:

  • Использует текстовый протокол, где запросы и ответы читаются как строки.
  • Для каждого запроса открывается новое TCP-соединение, что создаёт накладные расходы и задержки.

HTTP/2.0:

  • Перешёл на биннарный формат, позволяющий быстрее и компактнее кодировать данные.
  • Поддерживает мультиплексирование — несколько запросов и ответов передаются параллельно по одному соединению.
  • Реализовано сжатие заголовков (HPACK), уменьшающее объём передаваемых данных.
  • Введена приоритизация запросов, что позволяет оптимально распределять ресурсы при загрузке.
Особенность HTTP/1.0 HTTP/2.0
Формат передачи Текстовый Бинарный
Соединения Новое на каждый запрос Одно для множества запросов
Мультиплексирование Нет Да
Сжатие заголовков Нет Да (HPACK)
Приоритизация запросов Нет Да

Пример

// HTTP/1.0
GET /index.html HTTP/1.0
Host: example.com

// Для следующего запроса нужно новое соединение

// HTTP/2.0
// Один TCP-сокет обрабатывает несколько запросов одновременно,
// данные передаются в бинарном формате с сжатыми заголовками.

В HTTP/1.0 каждый запрос требует отдельного соединения, что приводит к задержкам, а в HTTP/2.0 запросы идут параллельно по одному соединению, ускоряя загрузку страниц.

Что важно знать на собеседовании

  • HTTP/1.0 не поддерживает постоянные соединения и мультиплексирование.
  • HTTP/2.0 значительно снижает задержки за счёт бинарного протокола и сжатия заголовков.
  • Мультиплексирование в HTTP/2.0 позволяет отправлять несколько запросов одновременно по одному соединению.
  • Приоритизация запросов помогает оптимизировать загрузку ресурсов.
  • Знание различий важно для тестирования производительности и корректности API.

Тема: HTTP, REST и API | Уровень: junior