Počítá se každá vteřina, a to doslova. Podle statistik společnosti Akamai, největší světové cloud delivery platformy, 47 % zákazníků e-shopů očekává, že se web načte do dvou vteřin. Když proces trvá déle než 3 vteřiny, 40 % zákazníků e-shop rovnou opustí. A až u 79 % nakupujících, kteří jsou nespokojení s výkonností webu, je výrazně nižší pravděpodobnost, že si ve stejném e-shopu něco koupí v budoucnu.
Problémy s dobou načtení stránky tak v některých případech mohou vést ke ztrátám i v milionech korun. Když je e-shop pomalý, logická dedukce jeho manažerů je přidat výkon připojením dalších serverů a procesorů. Někdy se tak stává, že má e-shop hodně výkonu, a platforma je i tak pomalá, protože dělá něco jinak, než by měla.
Výkonnost je mince se dvěma stranami. Na jedné z nich je samotné fungování platformy, na straně druhé pak servery. Problematika se točí kolem tří zúčastněných stran – e-shopu, programátora platformy a poskytovatele hostingových služeb. Spolupráce mezi všemi třemi však ne vždy funguje správně a dochází k problémům. Nejviditelněji při pomalém načítání webu. Administrátoři serverů hází vinu na špatně naprogramovanou platformu, programátoři se naopak vymlouvají na nesprávně fungující servery.
„I když máte super aplikaci, na pomalém železe bude pomalá. Nicméně, z pohledu výkonnosti, když je e-shop pomalý, je snazší říct, že to chce silnější železo než platformu optimalizovat. Často i levnější. Problémem je, že jde o strašně komplexní téma. Majitele e-shopu to často nezajímá a jen řekne, že potřebuje, aby e-shop fungoval, ať to někdo zařídí,“ popisuje Damir Špojlarič, spoluzakladatel a CEO VSHostingu specializujícího se na managed serverové služby.
PROGRAMÁTOŘI NEMAJÍ PEČOVAT O SERVER
Serverovým službám se Špoljarič profesně věnuje již přes 13 let a dle jeho slov je na tuzemském trhu běžnou situací, že se serverům nevěnuje dostatečná pozornost. Ty nejmenší e-shopy využívají platformy jako Shoptet, kde vše funguje na pár kliknutí. S dalším rozvojem si online obchody najímají vlastního zaměstnance, který servery spravuje. Být však závislým na jednom člověku (který například jezdí občas na dovolenou a přes víkend nezvedá telefon) se může vymstít nedostatečnou rychlostí řešení krizových situací. A zároveň se často stává, že e-shopy mají vývojáře, kteří platformu naprogramují a současně také spravují servery. To však není úplně správně.
„Snažíme se klientům vysvětlit, že programátor nemá dělat všechno. Programátor se má soustředit na vývoj co nejkvalitnější aplikace a nemá se starat o provoz serverů. Jsou to administrátoři serverů, kteří musí zabezpečit minimální riziko výpadku e-shopu, například i během hackerských útoků. Provozovatelé e-shopů musí pochopit, že administrátoři jsou odpovědní za provoz, programátoři zajišťují vývoj platformy. A obě skupiny musí fungovat spolu,“ vysvětluje Špojlarič.
Pokud o výsledném procesu a fungování platformy a serveru rozhoduje jen administrátor, nebo jen programátor, je to špatně. Většinou to dopadne tak, že platforma narazí na své limity či nějaký naprosto fatální provozní problém. Pokud spolu komunikují, uzavřou kompromis a z toho těží i samotný e-shop.
POZNEJTE SVOJE LIMITY
Základním předpokladem, jak krizovým situacím předejít, je zjistit limity platformy, na které e-shop funguje. „V lidské řeči – kolik návštěvníků platforma zvládne při stávajícím kódu a co se stane, když budeme muset tento počet navýšit. Přidám výkon a množství serverů? Co se stane, když kód nebude stačit? Kdo situaci sleduje a vyhodnocuje, mám vlastního člověka ve firmě, je to hostingová firma, nebo někdo další?“ jmenuje Špoljarič otázky, na které by e-shopy měly znát odpověď.
Spousta e-shopů tyto limity jednoduše nezná, běží na jednom serveru a je s tím spokojena – dokud nepřijde krizová situace. Dlouhodobé podceňování investic do rozvoje přináší negativní následky. S programátorem je nutné zmiňované faktory definovat předem a verifikovat by je měl i zástupce síťového oddělení nebo někdo se zkušenostmi s DevOps (development and software operations). Programátoři totiž běžně zkušenosti z provozu nemají, místo toho rozumí kódu. Aby platforma fungovala správně, musí návrh verifikovat obě strany, udělat podrobnou analýzu a zjišťovat souvislosti. A to ještě předtím, než se začne platforma psát.
ŠKÁLUJTE, KDYŽ TO DÁVÁ SMYSL
Když e-shop zná svoje limity, může se připravit na očekávaný vývoj, tedy zejména další růst, s čímž souvisí škálování platformy. Na výběr jsou dvě možnosti. V případě vertikálního škálování jde o přidávání nových procesorů a serverů.
U horizontálního škálování jde především o paralelizování přidávání výkonu, což umožňuje využít větší možnosti škálování a nebýt limitován možnostmi maximálního výkonu jednoho serveru. U horizontálního škálování je však nutné, aby tento moderní způsob škálování podporovala především aplikace e-shopu a zvolené technologie.
„Zároveň by si provozovatelé e-shopu měli uvědomit, že škálování není jediný atribut, na který by se měli vývojáři soustředit. Pokud například počítáme s životností aplikace dva až tři roky, nemá smysl zvyšovat náklad vývoje o stovky procent jen proto, aby šel e-shop naškálovat o tisíce procent. Je dobré zaměřit se i na bezpečnost a další atributy aplikace,“ dodává Špoljarič.
VÝKONNOST ZE STRANY INFRASTRUKTURY
V první řadě by se podle něj měli provozovatelé e-shopů aktivně zajímat o infrastrukturu, na které běží. Manažeři by měli rozumět alespoň základním metrikám – jak systém funguje, jak je zabezpečený, jak často se dělá update, kdo a jak situaci monitoruje. Pokud rozumí i zátěži serverů apod., není to na škodu, ale podrobný monitoring platformy mají zajistit administrátoři či hostingový poskytovatel.
S problematikou souvisí garance, které nabízí poskytovatel infrastruktury. „Manažeři garance často neřeší, přitom návaznost na providera je velká. Není to jak s mobilním operátorem, který když mě naštve, jednoduše vyplním formulář a provedu si číslo jinam. Převádět platformu nebo aplikaci je vždy náročné, zdlouhavé a nákladné. Zázemí je třeba mít dobře rozmyšlené, visí na něm celý byznys,“ radí Špoljarič.
VÝKONNOST ZE STRANY PLATFORMY
Jak již bylo zmíněno, celá problematika kolem výkonnosti e-shopu nesouvisí jen se servery, ale i se samotnou platformou. „Co manažeři často nevědí a je potřeba jim hodně zdůrazňovat, je fakt, že vývoj aplikace je kontinuální proces. Aplikace zastarává a po pár letech přestane fungovat podpora ze strany operačního systému serveru pro verze technologií, na kterých je aplikace e-shopu vytvořena.“
„Zpočátku dojde ke ztrátě možnosti mít co nejdříve nasazené bezpečnostní aktualizace na serveru, po delším čase nejsou už možné žádné aktualizace a následně je aplikace technicky s novými verzemi operačního systému již dokonce nekompatibilní. Je potřeba vědět, že aplikace má životnost a tu je potřeba s vývojáři mít předem určenou a obchodně spočítanou z pohledu investice do aplikace. Životnost aplikace by měla být 3 až 5 let,“ uzavírá Špoljarič.
Tento článek byl zveřejněn v sedmém vydání e-commerce magazínu EXEC: