Проектирование высокоуровневой архитектуры сервиса

Редиректы обслуживает быстрый read-path с кешем; создание ссылок пишет в основное хранилище, а аналитика обрабатывает события асинхронно.

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

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

Редиректы обслуживает быстрый read-path с кешем; создание ссылок пишет в основное хранилище, а аналитика обрабатывает события асинхронно.

Подробный разбор

Ответ с пояснениями

Условие

Исходя из заданных функциональных и нефункциональных требований, а также рассчитанных параметров (объём данных, RPS, пропускная способность), необходимо разработать схему high‑level архитектуры системы.

Создать общую схему архитектуры сервиса сокращения ссылок, включающую:

  • компоненты приёма запросов (API, балансировщик нагрузки);
  • хранилище (основное и/или кеш);
  • подсистему аналитики переходов;
  • механизм ограничения частоты запросов (rate limiting);
  • TTL и процесс очистки просроченных ссылок.

Ответ

Редиректы обслуживает быстрый read-path с кешем; создание ссылок пишет в основное хранилище, а аналитика обрабатывает события асинхронно.

Поток создания: балансировщик → API → проверка лимитов → генерация уникального кода → БД. Уникальный индекс защищает от коллизий; повторный запрос создания можно связать с ключом идемпотентности.

Переход: API ищет код в кеше, при промахе — в БД, проверяет expires_at и возвращает redirect. Аналитическое событие уходит в очередь, её задержка не должна тормозить переход. TTL кеша не превышает оставшийся срок ссылки; фоновая очистка удаляет просроченные записи, но не заменяет проверку срока при чтении. Число реплик и шардов выбирают по заданной нагрузке, которой здесь нет.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее