Flakony parfémů na toaletním stolku v měkkém světle

Notino · E-commerce

Notino: rychlejší platforma a desetinásobná kapacita požadavků

Monolitický e-shop Notina zpomaloval stránky i vydávání. Mikrofrontendy a nové uspořádání týmů přinesly o 60 % rychlejší platformu a desetinásobnou kapacitu.

Fakta o projektu

Každá spolupráce stojí na několika ověřitelných faktech.

Naše role
Konzultace a vývoj
Odvětví
E-commerce
Technologie
Mikrofrontendy · E-commerce platforma
Služby
Vývoj softwaru na míru

Jedna pevně provázaná aplikace zpomalovala globální e-shop

Notino prodává kosmetiku a parfémy online na mnoha trzích a má široký katalog. Pro zákazníka je pomalá stránka nebo rozbité vydání stejnou součástí nákupu jako nalezení správného produktu.

E-shop běžel jako jedna monolitická aplikace. Stránky se načítaly pomalu, chyby byly časté a každá změna frontendu procházela stejným společným vydáním. Počet zákazníků rostl. Aplikace s ním nedržela krok.

Zákazníci potřebovali rychlejší stránky a méně rozbitých vydání

  • Zvládat víc požadavků s tím, jak roste počet zákazníků
  • Zrychlit načítání stránek na všech trzích
  • Vydávat změny častěji a s menším výskytem chyb

Monolit vázal každý tým na jedno společné vydání

  • Změna jedné části frontendu zasahovala do vydání celé aplikace
  • Týmy nemohly své oblasti rozvíjet samostatně
  • Závislosti při vydávání určovaly, jak často lze nasazovat

Rozdělili jsme frontend a podle něj přeskládali týmy

Navrhli jsme mikrofrontendovou architekturu: frontend rozdělený do částí, které jednotlivé týmy vyvíjejí a vydávají samy, s mnohem menší závislostí na monolitu. Vývoj mezitím nestál, části se oddělovaly jedna po druhé.

Samotná architektura by nezměnila, jak často Notino nasazuje. Frontendové týmy jsme proto uspořádali podle nových hranic tak, aby každá oblast měla svého vlastníka a vlastní cestu k vydání. Rychlost, chybovost a kapacitu požadavků jsme řešili společně s uspořádáním týmů, ne jako ladění na okraji.

Každá část frontendu se vydává sama

Z oblastí frontendu vznikly samostatně nasaditelné části. Změna v jedné oblasti už nečeká na vydání celého e-shopu a neohrožuje ho.

Hranice týmů kopírují hranice v kódu

Týmy jsme přeskládali tak, aby architektura unesla častější vydávání. Širší e-commerce platforma zůstala na místě; frontend přestal záviset na jejím společném vydání.

Rychlejší stránky, vyšší kapacita, častější vydávání

Načítání stránek
O 60 % rychlejší
Kapacita požadavků za minutu
Desetinásobek původní kapacity
Frekvence vydávání změn
Desetinásobná frekvence

Čísla popisují období změny, ne jednu úpravu

Projektové podklady uvádějí o 60 % rychlejší načítání stránek, desetinásobnou kapacitu požadavků za minutu, desetinásobně častější vydávání a méně chyb po změně.

Hodnoty nelze připsat jediné technické úpravě. Vznikly v období, kdy se současně měnila architektura, vývojové postupy i uspořádání týmů.

Na začátek stačí popis vlastními slovy.

Popište, co vás trápí. Do dvou pracovních dnů se ozveme s prvním praktickým krokem.