Feature Flag
Feature Flags — must-have инструмент CD/Continuous Deployment. Без них любой запуск — риск.
Типы flag-ов
- Release flags — постепенный rollout новых фич.
- Experiment flags — A/B-тесты.
- Permission flags — Premium / Free фичи.
- Operational flags — kill switches на случай проблем.
Когда применять и когда нет
Применять
- SaaS / web-продукт с CD
- Высокая частота релизов
Не применять
- Mobile-приложение (требует app store review) — менее эффективно
Примеры применения
Запуск новой фичи: внутренние тесты (1% сотрудников) → 5% пользователей → 25% → 50% → 100%. Если на 25% метрики проседают — выключаем без отката кода.
Часто задаваемые вопросы
Branch — отдельная ветка в git, не в production. Flag — фича в production, но выключенная. Trunk-based development + flags устраняет проблемы long-lived branches.