← К курсу

Разберите сложные случаи

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

Выберите нужную тему. Если термины пока незнакомы, сначала прочитайте указанные базовые главы. Правильный ответ на проверочный вопрос не заменяет самостоятельного разбора архитектуры.

Проверочные вопросы углублённых блоков: 0 из 8. Этот прогресс считается отдельно от 16 базовых глав.

Начать с первого блока: Согласованность: какие истории операций допустимы →

1. Согласованность: какие истории операций допустимы

Различаем линеаризуемость, сериализуемость и snapshot isolation, воспроизводим write skew и проверяем обещания при разделении сети.

Перед разбором:

Открыть разбор →

2. Консенсус: почему большинство ещё не доказательство

Разбираем журнал Raft, сроки и выборы, правило фиксации текущего срока, потерянный ответ и границу между консенсусом и внешним ресурсом.

Перед разбором:

Открыть разбор →

3. Распределённые транзакции: решение, неизвестный исход и компенсация

Сравниваем 2PC и saga на бронировании с оплатой: падение координатора, зависшие подготовленные участники и позднее подтверждение платежа.

Перед разбором:

Открыть разбор →

4. Где заканчивается «ровно один раз»

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

Перед разбором:

Открыть разбор →

5. Горячие ключи и перенос данных без второго владельца

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

Перед разбором:

Открыть разбор →

6. Перегрузка: как не превратить замедление в отказ

Разбираем бюджеты времени и повторов, ограничение параллелизма, очереди и восстановление после каскадного сбоя.

Перед разбором:

Открыть разбор →

7. Регион недоступен: что можно обещать после переключения

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

Перед разбором:

Открыть разбор →

8. Миграции: перенести данные и не затереть новые записи

Согласуем фоновый перенос с текущими изменениями, проверим удаления, переключение чтения и возможность отката.

Перед разбором:

Открыть разбор →