airstop_white

Zrychlili jsme načítání cestovního webu o 50 %

  • 90 % zvýšení stability webu
  • 5 s → 1 s odezva vyhledávání
airstop-hero
Služba
Vývoj · Design · Řízení a rozvoj
Odvětví
Cestovní ruch

Představení

Airstop.cz

Airstop.cz je český online prodejce zájezdů. Nabízí zájezdy od desítek dodavatelů a jeho web musí v reálném čase hledat napříč jejich systémy — u každého dotazu obchází cizí API, skládá výsledky a hlídá dostupnost termínů.

Přepsali jsme mu backend, sjednotili technologie a přesunuli provoz do AWS.

Stav před spoluprací
  • 10 dodavatelských systémů
  • 4 technologie vedle sebe
Ivo polášek
Digital Product Manager

1.

Potřeba

Airstop stál na architektuře, která vznikala po vrstvách. PHP, C#, MySQL a MongoDB vedle sebe, každá část psaná jinak a jiným jazykem.

Systém fungoval, ale každá změna v něm stála víc času než ta předchozí.

A vyhledávání se protahovalo

Dotaz, který musí obejít cizí API několika dodavatelů, trval i přes pět sekund. To je doba, po kterou u vyhledávání zájezdů nikdo nečeká.

Klient nechtěl záplatovat. Chtěl systém, který unese složitou doménovou logiku, zvládne různorodá API a nebude brzdou pro produktový vývoj.

2.

Výzva

Složitost, která nebyla vidět na začátku.

Doménová složitost se ukazovala postupně. Na začátku nebylo vidět, kolik pravidel se za prodejem zájezdů skrývá — dostupnost, termíny, ceny od různých dodavatelů, každý s vlastní logikou a vlastním API. Projekt jsme proto vedli agilně a průběžně ladili očekávání na obou stranách.

Druhá výzva byla v tom, na čem systém stojí: deset cizích systémů, které nemáme pod kontrolou. Když některý z nich vypadne nebo zpomalí, nesmí to shodit celý web.

A do třetice — u části dodavatelských API se platí za dotaz. Optimalizace tedy nebyla jen o rychlosti, ale i o penězích za každé zbytečné volání.

3.

Řešení

Jeden jazyk místo čtyř technologií.

Sjednotili jsme celý stack do JavaScriptu s TypeScriptem. Backend jsme přepsali od základu, frontend refaktorovali. Zásadní výhodou je sdílení logiky napříč systémem — stejná pravidla platí na obou stranách, takže se nemohou rozejít, a údržba je jednodušší.

Vyhledávání jsme přestavěli včetně cache. Dotazy, které dřív trvaly i přes pět sekund, se dnes zpracují do jedné, i když sahají na externí API.

Systém jsme přesunuli do AWS s vysokou dostupností a nasazováním bez výpadku. Integrace s deseti dodavatelskými systémy jsme postavili tak, aby byla komunikace auditovatelná a logovaná, a aby počet volání zůstal na nezbytném minimu. Modulární architektura s fallback mechanismy drží web funkční i tehdy, když má některá třetí strana problém.

Výsledky

~ 50 %
zrychlení načítání webu
5 s → 1 s
odezva vyhledávání
~ 90 %
zvýšení stability stránky

Jak web vypadá

Chcete podobné řešení?

Martin Henych
Martin Henych
CRO
(+420) 606 653 551
Po–Pá 9:00–17:00
info@designdev.cz
Odpovídáme do 24 hodin
Společnostvolitelné

Prohlédněte si naši další práci

Máte vizi? Pojďme ji proměnit v úspěšný digitální produkt

Martin Henych
CRO
(+420) 606 653 551
Po–Pá 9:00–17:00
info@designdev.cz
Odpovídáme do 24 hodin
Napsat zprávu
Martin Henych