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.