MTTR, MTTF, MTBF: метрики надёжности для веб-сервисов
Метрики надёжности — язык аптайма. Когда спрашивают «насколько надёжен ваш сервис?», метрики MTTR, MTTF и MTBF дают объективные ответы. Понимание этих метрик помогает устанавливать осмысленные SLA, приоритизировать улучшения и общаться с заинтересованными сторонами.
MTTR — среднее время восстановления
MTTR измеряет среднее время от обнаружения сбоя до восстановления сервиса. Самая действенная метрика, поскольку напрямую измеряет способность команды реагировать.
Формула MTTR
MTTR = Общее время восстановления / Количество инцидентов
Пример: 3 инцидента за 30мин + 120мин + 15мин = 165мин
MTTR = 165 / 3 = 55 минут
Компоненты MTTR
- Обнаружение: сколько проходит до замечания сбоя (мониторинг сайтов, алерты)
- Диагностика: сколько занимает определение причины
- Исправление: время внедрения решения
- Верификация: подтверждение восстановления сервиса
Снижение MTTR
- Быстрее обнаруживать: комплексный мониторинг с чувствительными алертами
- Быстрее диагностировать: runbook-и, хорошее логирование, observability
- Быстрее чинить: автоматические откаты, feature flags
- Быстрее верифицировать: автоматические health-чеки
MTTF — среднее время до отказа
MTTF измеряет среднее время работы до первого сбоя. Для веб-сервисов отвечает: «сколько после деплоя до поломки?»
Формула MTTF
MTTF = Общее время работы до сбоев / Количество сбоев
Пример: 3 деплоя работали 72ч, 168ч, 48ч до сбоя
MTTF = (72 + 168 + 48) / 3 = 96 часов
Улучшение MTTF
- Лучшее тестирование (юнит, интеграционное, нагрузочное)
- Постепенные выкатки (canary deployments)
- Chaos engineering для проактивного поиска слабостей
- Планирование ёмкости для предотвращения исчерпания ресурсов
MTBF — среднее время между отказами
MTBF — среднее время между последовательными сбоями для восстанавливаемых систем. Включает аптайм и время ремонта: MTBF = MTTF + MTTR.
Формула MTBF
MTBF = Общее время работы / Количество сбоев
Пример: сервис работал 720 часов за месяц с 3 сбоями
MTBF = 720 / 3 = 240 часов между сбоями
Как они связаны
MTBF = MTTF + MTTR
|←—— MTBF ——→|←—— MTBF ——→|
|← MTTF →|←MTTR→|← MTTF →|←MTTR→|
[ аптайм ][ даун][ аптайм ][ даун]
Доступность из метрик
Доступность = MTTF / MTBF = MTTF / (MTTF + MTTR)
Пример: MTTF = 237ч, MTTR = 3ч
Доступность = 237 / (237 + 3) = 237 / 240 = 98.75%
Снижение MTTR имеет непропорционально большое влияние на доступность. Переход с 3ч до 1ч MTTR улучшает доступность больше, чем удвоение MTTF.
Целевые показатели
| Доступность | Даунтайм/год | Пример MTBF/MTTR |
|---|---|---|
| 99% | 3.65 дня | MTBF 100ч, MTTR 1ч |
| 99.9% | 8.76 часов | MTBF 1000ч, MTTR 1ч |
| 99.95% | 4.38 часов | MTBF 2000ч, MTTR 1ч |
| 99.99% | 52.6 минуты | MTBF 10000ч, MTTR 1ч |
Практические советы
- Отслеживайте все три: MTTR — реакция, MTTF — робастность, MTBF — общая надёжность
- Начните с MTTR: обычно проще снизить время восстановления, чем предотвратить все сбои
- Перцентили, не средние: средний MTTR 30мин бессмыслен, если один инцидент занял 8 часов
- Сегментируйте по критичности: отдельные метрики для SEV-1, SEV-2, SEV-3
- Ежемесячный обзор: тренды важнее отдельных значений
- Автоматизируйте: берите данные из системы управления инцидентами
Заключение
MTTR, MTTF и MTBF — взаимодополняющие метрики, рисующие полную картину надёжности. Начните с MTTR — она самая действенная. Затем отслеживайте MTBF для понимания общего тренда. Используйте числа для установки реалистичных SLA и обоснования инвестиций в инфраструктуру.
Проверьте ваш сайт прямо сейчас
Проверить →