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

Банк вопросов с собеседований

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

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

Усильте резюме перед собеседованием

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

Анализ резюме
Сбросить

Каталог

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

Найдено: 61
Теория

Как PostgreSQL и другие СУБД обнаруживают и устраняют взаимоблокировки?

Для поиска дедлоков, или взаимоблокировок, СУБД анализирует граф блокировок: транзакции представлены узлами, а зависимости по ресурсам — связями В PostgreSQL периодически выполняется поиск циклов в wait-for graph…

Читать ответ
Теория

Как Redis-кеширование помогает оптимизировать приложение?

Как Redis-кеширование используется для оптимизации? Redis — это In-Memory хранилище с минимальной задержкой Его применяют для хранения данных, которые запрашиваются особенно часто Наиболее распространённый вариант —…

Читать ответ
Теория

Как СУБД обеспечивает изоляцию транзакций при параллельной работе?

управление конкурентным доступом (Concurrency Control) уровни изоляции (Read Uncommitted → Serializable) блокировки (Locking): shared и exclusive мультиверсионность (MVCC) — хранение версий данных для чтения…

Читать ответ
Лайвкодинг

Как в Go создать worker pool с ограничением concurrency?

Как в Go реализовать worker pool с ограниченным concurrency? concurrency определяет число одновременно работающих goroutine Для ограничения создают буферизированный канал размером с concurrency Перед запуском worker в…

Читать ответ
Теория

Как в транзакциях обеспечиваются атомарность и изоляция?

Транзакция представляет собой последовательность операций, выполняемую как единое целое Атомарность (ACID) означает: либо выполняются все операции, либо не выполняется ни одна При возникновении ошибок используются…

Читать ответ
Теория

Как выполнить транзакцию с помощью SQL-запросов?

Транзакция представляет собой группу операций, выполняемых как единое целое. Основные команды транзакций: BEGIN TRANSACTION — запускает транзакцию. COMMIT — сохраняет внесённые изменения. ROLLBACK — отменяет изменения…

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

Как защитить баланс от двойного списания при гонке транзакций?

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

Читать ответ
Теория

Как корректно отменить горутину, выполняющую долгую операцию, например запрос к БД?

Как корректно отменять горутины, выполняющие долгие операции? для управления долгими горутинными операциями в Go используется контекст следует применять context.Context вместе с отменой (CancelFunc) context нужно…

Читать ответ
Теория

Как на собеседовании объяснить, что такое партиционирование (partitioning) таблиц в базах данных?

способ горизонтального разделения таблиц в БД данные распределяются по подмножествам (партициям) на основании ключа каждая такая часть отдельно хранится и обрабатывается повышает производительность запросов и операций…

Читать ответ
Теория

Как обеспечить exactly-once обработку в Kafka и какие есть подводные камни?

Exactly-once обработка в Kafka: как реализовать и что учесть Тема: обработка сообщений, Kafka, идемпотентность В основе exactly-once находится транзакционная запись в Kafka через Transaction API Применяется…

Читать ответ
Теория

Как правильно выбрать уровень изоляции транзакции?

контроль конкурентного доступа к данным доступные уровни: Read Uncommitted, Read Committed, Repeatable Read, Serializable решение определяется соотношением требований к консистентности и производительности низкие…

Читать ответ
Теория

Как работает секционирование таблиц (table partitioning) в PostgreSQL?

Как работает секционирование таблиц (table partitioning) в PostgreSQL? большая таблица разделяется на отдельные части — партиции каждая партиция представляет собой таблицу с собственным условием отбора, например…

Читать ответ