Подготовка к интервью

Вопросы по System Design на собеседовании

889 вопросов по System Design

889 вопросов 1634 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

В этой подборке вопросы сгруппированы по формату «System Design», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, api, database.

Каталог

Результаты поиска

Найдено: 889
System Design

Если бы не было такой инфраструктуры (типа Prometheus), а были только Kafka и база данных, смогла бы база данных записать все эти сообщения при нагрузке сто тысяч сообщений в секунду?

Некоторые конфигурации БД способны на 100 тысяч записей в секунду, но гарантировать это без условий нельзя. Решают размер событий, индексы, durability, батчи, репликация и оборудование.

Читать ответ
System Design

Как организовать транзакцию между двумя микросервисами? Что такое Saga и как она работает?

Saga разбивает общий бизнес-процесс на локальные транзакции сервисов. При ошибке выполняются предусмотренные компенсации, а не общий rollback всех баз данных.

Читать ответ
System Design

Из каких параметров состоит качество и оценка интеграционных взаимодействий?

Качество интеграции оценивают по задержке, пропускной способности, доступности, надёжности доставки, корректности данных и совместимости контрактов. Нужны измеримые требования, а не только «работает».

Читать ответ
System Design

Архитектура сервиса для сохранения координат водителей такси. Какая БД нужна, нужно ли что-то кроме БД?

Последнюю позицию водителя и историю маршрута лучше разделить. Для поиска ближайших нужен геоиндекс, для истории — хранилище последовательных событий с ограниченным сроком хранения.

Читать ответ
System Design

А если все сервисы пишут такие сообщения в Kafka, и нагрузка достаточно высокая — сотни тысяч сообщений в секунду, как бы вы организовали аудит в этом случае?

Kafka позволяет развести приём аудита и обработку, но нужны партиционирование, пакетная запись и хранилище под запросы и срок хранения. Сотни тысяч событий требуют расчёта объёма.

Читать ответ
System Design

Какую базу данных выбрать для 100 тысяч insert/sec при low latency и высокой доступности?

По одной цифре 100 тысяч insert/sec выбрать БД нельзя. Нужны размер записи, профиль чтения, индексы, требования к транзакциям, допустимая потеря данных и целевая p99 latency.

Читать ответ
System Design

Нужно организовать аудит вызовов сервисов: например, сервис А вызывали миллион раз, сервис Б — сто раз за сутки. Как бы вы решали эту задачу?

Для оперативной статистики подходят счётчики запросов по сервису и результату. Для точного аудита нужен отдельный устойчивый журнал событий, а не только мониторинговые метрики.

Читать ответ
System Design

Как работает Redis sorted set для хранения отложенных задач и сколько памяти занимает?

В Redis sorted set идентификатор задачи можно хранить как member, а время запуска — как score. Готовые задачи выбирают по score не больше текущего времени.

Читать ответ
System Design

Разберите инцидент: клиент отправил одну заявку на депозит, но ему открыли три депозитных счёта. Какие причины будете проверять и как исправлять?

Проверьте retries клиента и сервисов, повторную доставку событий и гонку создания без уникального бизнес-ключа. Сначала остановите новые дубли и найдите, где одна заявка превратилась в три эффекта.

Читать ответ
System Design

Что значит смешанный подход в интеграции сервисов

Критичный результат запроса возвращается синхронно, а независимые последующие действия выполняются асинхронно. Границу определяет требуемая согласованность, а не желание использовать больше технологий.

Читать ответ
System Design

Для биллинговой системы со 100 тысячами одновременно активных пользователей, которые могут совершать платежи: сколько партиций Kafka потребуется?

По числу 100 тысяч активных пользователей количество Kafka partition определить нельзя. Нужны частота платежей, событий на операцию, размер сообщений, скорость consumer и пиковая нагрузка.

Читать ответ