Источник
HTTP Overview (MDN)
Определение HTTP, принципы и базовые свойства протокола.
HTTP — протокол прикладного уровня, ставший основой Всемирной паутины и большинства веб‑API. Он описывает обмен в формате «запрос → ответ», оставаясь простым и расширяемым для разных сценариев.
Ключевые свойства HTTP
Клиент‑серверная модель
Клиент инициирует запрос, сервер отвечает ресурсом или статусом.
Stateless
Каждый запрос независим, а состояние хранится вне протокола.
Расширяемость через заголовки
Headers позволяют добавлять метаданные, кеширование и контент‑неготиацию.
Промежуточные узлы
Прокси, кеши и шлюзы помогают масштабировать и ускорять доставку.
Как выглядит обмен
Запрос содержит метод, путь и заголовки, а ответ — статус, заголовки и полезную нагрузку. Эта простая форма обеспечивает универсальность и совместимость между клиентами и серверами.
Запрос ↔ ответ в HTTP
HTTP — это чёткая пара: request от клиента и response от сервера.
Состав сообщения
- Метод (GET, POST, PUT)
- URI / путь ресурса
- Headers
- Тело (опционально)
Источник
Evolution of HTTP (MDN)
История и ключевые вехи развития HTTP/1.1, HTTP/2 и HTTP/3.
Эволюция HTTP
Развитие протокола шло от простого текстового обмена к оптимизации производительности и устойчивости.
HTTP/1.1
1997 (RFC 2068), обновлён в 1999 (RFC 2616)Стандартный «текстовый» веб
- Постоянные соединения и пайплайнинг
- Кэширование и chunked transfer
- Часто требует несколько соединений
HTTP/2
2015 (RFC 7540)Бинарное фреймирование
- Мультиплексирование потоков в одном соединении
- Сжатие заголовков (HPACK)
- Снижение задержек при загрузке страниц
HTTP/3
2022 (RFC 9114)QUIC поверх UDP
- Быстрый handshake и меньше блокировок
- Избежание TCP head‑of‑line
- Лучшая работа в мобильных сетях
Почему это важно для System Design
- HTTP определяет формат API и влияет на latency, кэширование и поведение клиентов.
- Выбор версии протокола влияет на эффективность соединений и масштабирование.
- Понимание ограничений помогает проектировать устойчивые и производительные сервисы.
