Выбор ответа Middle Масштабирование обновлено

L4 и L7 балансировщики

Вопрос

Нужно отправлять запросы /api/* в один пул серверов, а /static/* в другой. Какой балансировщик для этого нужен?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: L7: он разбирает HTTP и видит путь. Маршрутизация по пути требует разобрать HTTP-запрос, это уровень приложения (L7: nginx, Envoy, HAProxy в режиме http).

Варианты ответа

  1. L7: он разбирает HTTP и видит путьправильный ответ
  2. L4: он быстрее и смотрит на порт
  3. Любой: и L4, и L7 видят URL запроса
  4. DNS-балансировка по поддоменам

Разбор

Маршрутизация по пути требует разобрать HTTP-запрос, это уровень приложения (L7: nginx, Envoy, HAProxy в режиме http). L4 работает с IP и портами TCP/UDP и путь не видит, хотя действительно быстрее. DNS-балансировка распределяет по адресам и тоже не знает про путь.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.