Middle
59
questionbank

Что такое SLO (Service Level Objective)?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

SLO — это количественные цели для надежности сервиса, выраженные в процентах за определенный промежуток времени. Они основываются на метриках SLA (Service Level Agreement), но представляют собой внутренние цели, к которым команда разработки стремится в первую очередь для улучшения качества сервиса, а не для юридических обязательств перед пользователем.

Примеры SLO:

  • Доступность (Availability): 99.9% успешных запросов HTTP за последние 30 дней.
  • Латентность (Latency): 95% запросов HTTP должны выполняться менее чем за 100 мс за последние 5 минут.
  • Пропускная способность (Throughput): Не менее 1000 обработанных сообщений в секунду за последний час.

Ключевые компоненты SLO:

  • Metrics: Измеряемые показатели (например, время ответа, процент ошибок).
  • Target: Целевое значение для метрики (например, < 100 мс, 99.9%).
  • Time Window: Период, за который достигается цель (например, за 30 дней, за 5 минут).

SLO помогает:

  • Установить четкие ожидания по надежности сервиса.
  • Сфокусировать усилия команды на наиболее критичных аспектах работы сервиса.
  • Определять, когда следует инвестировать в надежность, а не в новые функции (и наоборот), используя концепцию "бюджета ошибок" (Error Budget). Budget — это разница между 100% и SLO. Например, для SLO 99.9% бюджет ошибок составляет 0.1%. Если сервис превышает этот бюджет, команда должна приостановить разработку новых фич и сфокусироваться на повышении надежности.

В отличие от SLA, нарушение SLO не обязательно приводит к юридическим последствиям, но служит сигналом для улучшения сервиса и пересмотра приоритетов.