← BLOG  ·  ARCHITEKTURA  ·  2026.06.12

Strangler pattern w praktyce: migracja Razor → React bez zatrzymywania produkcji

Wymiana frontendu działającego systemu to operacja na otwartym sercu. Pokazuję, jak przeprowadzić ją moduł po module.

Autor
BARTOSZ SZCZEPAŃSKI
Czas czytania
12 MIN
Poziom
ŚREDNIO-ZAAWANSOWANY
Rewizja
2026.06.12

01Kontekst: dlaczego w ogóle migrować

System, o którym mowa, działa na produkcji od lat: ASP.NET Core MVC, widoki Razor, kilkuset aktywnych użytkowników dziennie. Frontend zestarzał się szybciej niż backend — coraz więcej wymagań dotyczy interaktywności, której Razor z doklejanym jQuery nie udźwignie bez bólu.

Decyzja o migracji do Reacta była łatwa. Trudne było wszystko inne: system nie może stanąć, zespół jest mały, a klient płaci za nowe funkcje, nie za przepisywanie starych.

02Dlaczego nie „big bang"

Przepisanie całości na boku i jednorazowe przełączenie kusi pozorną czystością. W praktyce oznacza miesiące pracy bez dostarczania wartości i jedno gigantyczne wdrożenie, którego nikt nie umie przetestować w całości.

Strangler pattern odwraca logikę: nowy frontend oplata stary moduł po module, przejmując ruch stopniowo — aż w pewnym momencie ze starego nie zostaje nic do uduszenia.

03Czego się nauczyliśmy

  • Kryterium przełączenia ustal przed startem — u nas: tydzień pracy nowego modułu na produkcji bez zgłoszeń P1.
  • Granica = moduł biznesowy, nie pojedyncza strona.
  • Strangler to też strategia komunikacji: klient widzi wartość co sprint.
BS

Bartosz Szczepański

Architekt oprogramowania .NET. Projektuję systemy dla kolei, bankowości i przemysłu — i opisuję je tutaj, zanim zdążą o sobie zapomnieć.