Externý monitorovací nástroj vám oznámi, že priemerný čas odozvy 5 monitorovaných adries URL sa za posledných 30 minút zdvojnásobil. Projekt beží na jednom fyzickom serveri, ktorý nie je pod vašou správou a je spustený niekde v dátovom centre. Pripojíte sa cez SSH, spustíte htop a zistíte, že CPU je zaťažený na 95 % a pamäť je už dávno preplnená.
Podľa gitu viete, že asi pred týždňom robili migráciu databázy na novú štruktúru tabuliek a kolega píše v chate, že musel migráciu spustiť cez noc, pretože prepočítavanie stĺpcov a indexov trvalo asi 5 hodín, počas ktorých bola takmer celá databáza zamknutá a nefungoval INSERT ani SELECT.
Problémy s výkonom sú teda pravdepodobne spôsobené nesprávne navrhnutými indexmi, zle prepracovanými dotazmi SQL alebo veľkým združovaním spojení. Na revert nie je čas, na stránke je podľa Google Analytics 7 tisíc používateľov a výpadok na 5 hodín by pre klienta znamenal reputačné riziko a stratu desiatok až stoviek tisíc korún za ten čas (ťažko odhadnúť, projektanti si vymýšľajú dosť). Uvedomujete si, že testovanie iba funkčnosti v testovacom prostredí nestačí a je potrebné vykonať aj záťažový test.
Keďže ide o dôležitý e-shop vášho najväčšieho klienta a vy očakávate, že sa situácia môže zhoršiť, máte 30 sekúnd na rozhodnutie.
Ako postupujete?
Jan Barášek Více o autorovi
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Články píše Jan Barášek © 2009-2024 | Kontakt | Mapa webu
Status | Aktualizováno: ... | sk