Situace
Svůj web StartupJobs spouštěli v roce 2012 na freehostingové službě. Záhy přešli na virtuální server, poté rozdělili front-end a back-end mezi více VPS, ale brzy ani takové řešení nestačilo. Výpadky a nestabilita začaly brzdit další rozvoj portálu.
Byznys rostl, ale infrastruktura ho nestíhala následovat.
„Za 1. rok nám návštěvnost stoupla 4⨉ a za 2 roky už 9⨉.”
Filip Mikschik, zakladatel StartupJobs
Mise Webglobe
Navrhli jsme kompletní restrukturalizaci backendu a přechod na vysoce dostupnou infrastrukturu (HA).
Cílem bylo:
- eliminovat výpadky
- zajistit firmě plynulý růst bez překážek
- uvolnit ruce vývojovému týmu a připravit prostor pro inovace
Co jsme udělali
Místo ad hoc přidávání dalších VPS jsme navrhli zcela nové řešení na míru – takové, které:
- zvládne nárazovou zátěž bez zaváhání
- umoží bezpečné nasazování nových verzí (staging)
- automaticky se přizpůsobí změnám provozu
„Počet uživatelů nám stabilně meziročně narůstal o 20 %. Chtěli jsme mít jistotu, že to náš web ustojí.”
Filip Mikschik, zakladatel StartupJobs
Vše jsme postavili na kontejnerech v Docker Swarm clusteru s možností snadného škálování.
Restrukturalizaci jsme z důvodů větší efektivity a snížení nákladů rozdělili na 2 etapy:
- Stabilizace situace: ve spolupráci s developery StartupJobs jsme všechny aplikace a komponenty webu upgradovali a rozdělili na samostatné servery.
- Přechod na plnohodnotnou HA: zduplikovali jsme klíčové části webu vytvořili k nim automatický failover (výpadek kterékoliv komponenty nesměl způsobit výpadek celého webu).
„Pokud by nyní mělo dojít k výpadku jednoho serveru, systém automaticky přepne na druhý. Tím sníží nedostupnost služeb na pouhé sekundy.”
Lukáš Kasič, Webglobe architekt infrastruktury
Výsledek
- Dostupnost stabilně nad 99,99 %.
- Web bez problémů zvládá až 2 600 návštěv za hodinu.
- Meziroční růst uživatelů o 46 %.
- Výrazně vyšší stabilita, výkon a spokojenost vývojového týmu.
„S novou infrastrukturou jsme roce 2023 ustáli rekordní 46% růst uživatelů.”
Petr Orosz, CTO StartupJobs
Tím naše práce nekončí. Pro další rychlý růst StartupJobs máme již předem navržené řešení. Dlouhodobě doporučujeme přechod ze sdílené virtualizace na vlastní virtualizační cluster s fyzickými servery.
Na hardware jsme odborníci. Používáme výlučně enterprise grade komponenty s výrazně delší životností oproti tomu, co se běžně používá.
A víme, jak je optimalizovat, abychom z fyzických serverů vymáčkli opravdu maximum.