Выбор ответа Junior Кластер, воркеры, масштабирование спрашивают часто обновлено

Что мешает горизонтальному масштабированию

Вопрос

Сервис масштабируют с 1 до 3 экземпляров за балансировщиком. Что сломается первым?

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

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

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

Коротко

Правильный ответ: Сессии в памяти процесса: другой экземпляр их не знает. Сессия в памяти есть только у экземпляра, который её создал.

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

  1. Логи в stdout перемешаются между экземплярами
  2. Сессии в памяти процесса: другой экземпляр их не знаетправильный ответ
  3. Подключение к PostgreSQL через общий пул соединений
  4. Чтение конфигурации из переменных окружения

Разбор

Сессия в памяти есть только у экземпляра, который её создал. Балансировщик отправит следующий запрос на другой, и пользователь окажется не авторизован. Решение: сессии в Redis или подписанный токен, то есть stateless-сервис.

  • Логи в stdout собирает инфраструктура с каждого экземпляра.
  • Каждый экземпляр держит свой пул, это нормально (с учётом лимита соединений БД).
  • Переменные окружения одинаковы у всех экземпляров.

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

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

Термины по теме