Проблематика
В крупные проекты вносится много (больше 10) изменений в день.
С целью минимизации рисков можно вносить изменения на небольшие группы пользователей, постепенно увеличивая долю пользователей с новой версией в зависимости от успешности / не успешности метрик.
Метрики
Как видно из постановки проблемы, успешность зависит от нескольких факторов:
- длительность принятия решения;
- вероятность принятия неправильного решения;
- количество изменений в единицу времени.
Выводы делаются на основе собираемых данных с сервисов (в идеале технических и бизнес-метрик).
Реализация
Пример в istio https://docs.flagger.app/usage/progressive-delivery