Проектирование SLA (Соглашения об уровне обслуживания) в архитектуре системы — это задание контролируемых, измеримых и поддающихся мониторингу показателей качества работы сервисов. На этапе архитектурного проектирования определяют ключевые параметры SLA, а также технические механизмы их измерения.
Базовые шаги:
Пример определения SLA для веб-сервиса:
Ключевые особенности:
Можно ли строить SLA только на технических метриках (например, ошибках и отклике)?
Ответ: Ошибочно. Необходимо учитывать и бизнес-метрики (например, успешность совершённых бизнес-операций), чтобы SLA соответствовал ожиданиям бизнеса.
Является ли достижение SLA статичным процессом и не требует корректировок после запуска системы?
Ответ: Нет. SLA пересматривается с изменением бизнеса, возросшей нагрузкой и появлением новых требований.
Может ли мониторинг SLA базироваться только на результатах внешних систем (ping, http-check) без агентов внутри сервисов?
Ответ: Не рекомендуется. Внешний monitoring важен, но внутренний gathering (агенты, собирающие внутренние метрики) позволяет обнаружить скрытые проблемы раньше, чем они станут заметны снаружи.