open atlas
↑ К треку
Основы System Design SD · 02 · 05

Доступность: обзор со свободным припоминанием

Подсказки на свободное припоминание через весь раздел доступности. Ответь сначала своими словами — включая арифметику — затем открой образец и сверься: SLO/SLA, девятки и бюджеты ошибок, резервирование и коррелированный отказ, failover и split-brain.

SD Senior ◷ 14 min
Уровень
ОсновыJuniorMiddleSenior

Припоминание бьёт перечитывание. Для каждой подсказки скажи или напиши полный ответ по памяти — включая арифметику — прежде чем откроешь образец. Усилие реконструкции математики SLO, размера резервирования и того, почему failover вызывает split-brain, и заставляет это держаться.

Реконструируй костяк раздела, не подглядывая: как связаны три service-level термина и где ставить каждый, чего стоят девятки и как складывается доступность, что покупает бюджет ошибок, как размерять резервирование и почему реплики в одной AZ не зарезервированы, и как failover может вызвать тот самый сбой, что должен был предотвратить.

Вспомните перед уходом
  1. 01
    Определи SLI, SLO и SLA, скажи, как они связаны, и где ставишь SLO.
  2. 02
    Дай таблицу девяток для простоя в месяц и объясни, почему каждая девятка стоит ~10× больше.
  3. 03
    Что такое бюджет ошибок и как он меняет поведение команды?
  4. 04
    Объясни размер резервирования (N/N+1/N+2), active-active против active-passive и почему реплики в одной AZ не зарезервированы.
  5. 05
    Различи failover и отказоустойчивость, объясни split-brain и его починку, и ловушку retry storm.
Итог

Если ты смог реконструировать каждый ответ по памяти, ты держишь костяк раздела. Три service-level термина связаны в одну сторону — измеряй SLI, целься в SLO, обещай SLA — и SLO стоит жёстче SLA как раннее предупреждение. Девятки (99,9% ≈ 43 мин/мес → 99,999% ≈ 26 с) стоят порядок каждая, ведь доступность умножается по зависимостям, а бюджет ошибок (100% − SLO) превращает надёжность в тратимый ресурс. Резервирование размеряют до N+1 под пик и размещают в независимых доменах отказа, ведь реплики в одной AZ — это коррелированный отказ, а не резервирование. Failover (реактивный, с окном восстановления) отличается от отказоустойчивости (замаскированной, без окна), и failover, что не отличит мёртв от недостижим, вызывает split-brain — чинится кворумом или fencing, а не лучшими таймаутами — тогда как retry storm на failover укрощают ограниченными таймаутами и ограниченными ретраями с backoff и jitter. Объединяющая идея: доступность ≈ MTBF/(MTBF+MTTR), так что раз отказы неизбежны, лучшая инвестиция обычно — быстрое отрепетированное восстановление — и всё это рассуждение, которое делаешь до инцидента, а не поведение, что обнаруживаешь во время него.

Что-то непонятно?

Задай вопрос по этому уроку. Вопросы анонимны и попадают напрямую автору — урок станет лучше.

хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.