Situace, kterou Donio řešilo
O platformě Donio bylo v posledních letech několikrát slyšet díky velice úspěšným crowdfundingům, které se dostaly až do novin a televize. Naposledy při dobročinné sbírce na léčbu malého Martínka, na niž během 60 dní přispělo přes 300 000 lidí.
Pro server Donio nicméně takto populární sbírky představují extrémní výzvu. Návštěvnost webu je kvůli nim proměnlivá a poněkud nepředvídatelná a může skokově narůst až na 1000násobek oproti normálu.
„V posleních týdnech sbírky na Martínka na web přišlo i několik milionů lidí denně”
Josef Šupka, developer
Výzva pro Webglobe
Jak říká developer firmy, Josef Šupka: „Pro Donio je zbytečné si celý rok platit naddimenzovaný server. Zároveň se ale na špičky nemůžeme předem připravit tím, že bychom si na některý měsíc dočasně navýšili výkon. I když tušíme, který crowdfunding má potenciál přilákat dárce, těžko se nám to odhaduje.”
Kvůli maximální úspoře jsme proto web umístili na náš managed VPS, čímž jsme Doniu ušetřili náklady za vlastního admina. Výkon serveru jsme nakonfigurovali tak, aby bohatě stačil pro běžný provoz: 6 CPU a 8 GB RAM.
Všechny naše managed servery jsou navíc jištěny naší speciální službou CAF (Customer’s Application First), kterou poskytujeme zdarma. CAF je dělaná přesně na ty situace, kdy hrozí přetížení serveru kvůli nečekanému nárůstu návštěvnosti.
Akce: Jak jsme web Donio zachránili před velkým výpadkem
Pojďme zpět k situaci se sbírkou na Martínka. Co jsme udělali pro to, abychom předešli výrazným výpadkům webu?
„Chvilku jsme se obávali, že úspěch téhle sbírky ohrozí i ostatní projekty, vaši admini naštěstí přesně věděli, co dělat.”
Josef Šupka, developer
S CAF můžeme na rychle narůstající vytíženost serveru reagovat bez otálení.
Proto jsme:
- dočasně navýšili parametry serveru až na 8násobek (32 CPU a 64 RAM)
- bez prodlení VPS přesunuli na méně vytížený server v rámci našeho robustního virtualizačního clusteru
- v součinnosti s Doniem na našem společném Slacku a po telefonu debugovali pomalé dotazy v databázi, jež zpomalovaly načítání stránek a částečně způsobovaly nedostupnost webu
Výsledek? Díky rychlému zákroku našich adminů se podařilo server Donio udržet on-line téměř po celou dobu tohoto obrovského náporu.