advanced
Strangler fig
Выносите behavior из legacy system incrementally, routing one capability at a time через adapters и rollback-safe releases.
Постепенно заменяйте legacy system, направляя новые или мигрированные capabilities в новые реализации, пока старая система сжимается — как fig tree вокруг host. Facades, proxies и feature flags для сдвига traffic capability за capability с rollback.
Компромисс: два параллельных system дорого, но безопаснее big-bang rewrite.
На интервью: миграция authentication из monolith без downtime; routing rules и success metrics.
Типовые ошибки: strangler layer вечно без поддержки; миграция data без sync verification; cutover без observability parity.
Чеклист:
- Routing по feature или URL с measurable traffic split.
- Тонкие testable adapters.
- Data parity между old и new paths.
- Decommission legacy modules с явными milestones.