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

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

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

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

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

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

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

Каталог

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

Найдено: 889
System Design

Как избежать дублирования отложенных писем при горизонтальном масштабировании сервиса?

Как исключить повторную отправку отложенных писем при горизонтальном масштабировании? область: распределённые системы, messaging ключевая проблема: конкуренция при отправке между несколькими инстансами решение 1 —…

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

Как изменить захардкоженный список наград без передеплоя приложения?

Как обновлять захардкоженный список наград без передеплоя приложения? конфигурация через properties — файл входит в состав билда и связан с ним для внесения изменений требуется рестарт/деплой приложения внешний сервис…

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

Как инверсировать зависимость между микросервисами с помощью брокера сообщений и событийной архитектуры?

Как выполнить «инверсию» зависимости между микросервисами? Сервис A обращается к сервису B напрямую, поэтому между ними возникает жесткая связь — tight coupling Инверсия зависимости достигается за счет асинхронного…

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

Как надёжно вызывать внешний сервис, например отправлять алерты, при высокой нагрузке?

Как обеспечить надёжность вызова внешнего сервиса при высокой нагрузке? Архитектура: асинхронное обращение через очередь сообщений Использовать очередь (RabbitMQ, Kafka) для буферизации запросов Добавить механизм…

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

Как не перегрузить внешний сервис при синхронных вызовах из высоконагруженной системы?

область: интеграция, отказоустойчивость, масштабирование ввести ограничение пропускной способности (rate limiting), чтобы контролировать частоту обращений к сервису применить bulkhead pattern для изоляции ресурсов и…

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

Как обеспечить гарантированную доставку сообщений между микросервисами с помощью паттернов Outbox и Saga?

Как обеспечить гарантированную доставку сообщений между микросервисами с помощью паттернов Outbox и Saga? гарантия доставки устраняет риски при асинхронном взаимодействии и сбоях Outbox: сообщение записывается вместе…

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

Как обеспечить дедупликацию событий в Kafka при Exactly-Once обработке без транзакций Kafka?

Дедупликация событий в Kafka для Exactly-Once без транзакций категория: реализация Exactly-Once без транзакционного механизма главная задача — не допустить повторной обработки дублирующихся сообщений базовый принцип —…

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

Как обеспечить идемпотентную обработку сообщений в RabbitMQ и исключить двойную тарификацию?

Контекст: обработка сообщений в очередях RabbitMQ с требованием гарантировать однократное выполнение операции Идемпотентность означает, что повторная обработка одного сообщения не меняет итоговый результат Применение…

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

Как обеспечить масштабируемость микросервисов в распределённой системе?

Горизонтальное масштабирование за счёт добавления новых инстансов сервиса Применение балансировщиков нагрузки (load balancers) Автоматическое масштабирование (auto-scaling), настроенное по метрикам нагрузки…

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

Как обеспечить согласованную инвалидацию кеша между несколькими датацентрами (multi-DC cache invalidation)?

распределённый кеш: в каждом DC хранятся локальные копии данных операция сброса должна выполняться атомарно и консистентно задействовать междатаценровую систему обмена событиями, например Kafka или Redis Streams после…

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

Как определить, что архитектура системы хорошая?

проектирование системы на уровне структуры компонентов и их взаимодействия создаёт условия для масштабирования, сопровождения и безопасного внесения изменений ясное распределение ответственности (Separation of…

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

Как оптимизировать базу данных при высокой нагрузке на запись OLTP и редком, но объёмном чтении?

Как действовать при высокой OLTP-нагрузке на запись и больших объёмах чтения OLTP-система с интенсивной записью и чтением в режиме bulk read Главный приоритет — ускорить операции записи и не допустить их блокировки…

Читать ответ