Technológie
Ako sme si poradili so SIAF-om?

Ako sme si poradili so SIAF-om?

Letecké dni SIAF na leteckej základni Sliač sú pre nás každým rokom nie len web developerskou výzvou, ale aj technologickou výzvou. V tomto článku trošku odhalíme z receptov našej webhostingovej kuchyne.

Už niekoľko rokov máme tú česť vrámci spoločnosti www.WebCreators.sk tvoriť pre letecké dni SIAF webovú stránku www.siaf.sk, ktorá má sprevádzať návštevníka nie len počas príprav na udalosť ale aj priamo na udalosti. Preto sme už od začiatku vedeli, že to nebude len taká jednoduchá web stránka a že okrem dizajnu a použiteľnosti webu sa musíme pripraviť na poriadny nátresk užívateľov.

O akých návštevnostiach hovoríme?

Webová stránka SIAF-u je špecifická v tom, že je počas roka málo navštevovaná, avšak keď sa už blížia letecké dni, tak sa v období 10 dní enormne zvýši návštevnosť. Táto návštevnosť sa každým rokom zvyšuje, ako ukazuje nasledovný obrázok:

Z obrázku vidno, že sa v rámci desiatich dní prišlo pozrieť na web až 97 000 ľudí, čo bol zároveň nárast oproti predchádzajúcemu roku o takmer 30%. Ďalším veľmi dôležitým údajom pre nás, ako webhostingovú spoločnosť je počet zobrazení stránky, čo bolo až 896 000 čo predstavovalo nárast až o 50%. V prvý deň leteckých dní, kedy sa na Sliač príde pozrieť najviac ľudí bolo na webe až 33 000 ľudí.

Správanie návštevníkov počas dňa

Je veľmi zaujímavé sledovať ako sa návštevníci SIAF-u správali počas letových ukážok. Najväčším ťahákom pre návštevníkov prvého (sobotňajšieho) leteckého dňa bol bezpochyby americký bombardér B-52 v letovej ukážke. V tomto momente stúpla okamžitá návštevnosť až na 1215 aktívnych používateľov, ktorí sa chceli niečo dozvedieť o B-52. Dokazuje to nasledovný obrázok presne z času preletu B-52, kde vidieť pomer až 85% mobilných zariadení a aktívne stránky, ktoré sa nejako týkali práve programu a B-52-ky:

Naša príprava na záťaž

Naša príprava spočívala v niekoľkých úrovniach:

  1. Optimalizovanie webovej stránky pre rýchle načítanie
  2. Zameranie sa na použiteľnosť webu, aby návštevníci zbytočne neblúdili na webe
  3. Optimalizovanie výkonu webového servera

Prvé dva body sa týkajú hlavne webového vývoja, ktorý zastrešujeme v rámci www.WebCreators.sk a tak sa nebudem na tomto mieste o tom viac rozpisovať, zameriam sa na tretí bod a to na optimalizáciu výkonu na serverovej úrovni.

Našťastie existuje tzv. frontend cache. Funguje tak, že je umiestnený medzi generátor webu (obyčajne PHP + Apache/Nginx) a prehliadač. Ak má web stránka nastavenú hlavičku s expiráciou v budúcnosti, tak počas tejto doby sa vygenerovaná stránka uloží do extrémne rýchlej operačnej pamäte a počas celej doby až do expirácie sa návštevníkom posiela verzia uložená v operačnej pamäti. Napríklad úvodná stránka SIAF-u má nastavenú expiráciu na 5 minút. Počas tejto doby sa isto nič dôležité na webe nezmení a tak je z cache obslúžených niekoľko tisíc zobrazení úvodnej stránky. PHP si pritom zamaká iba raz za 5 minút. Neznie to skvele?

Varnish frontend cache

Mali sme už nejaké skúsenosti s Varnish frontend cache, tak sme sa rozhodli práve pre tento software. Je pomerne jednoducho konfigurovateľný a môže sa dať pred akýkoľvek web server, či je to Apache, Nginx alebo IIS. Základná schéma varnish-u ako medzičlánku medzi prehliadačom a web serverom:

Varnish a SSL

Varnish sám nevie komunikovať pomocou šifrovaného protokolu HTTPS. Tak isto by nevedel zabezpečiť HTTP/2.0 protokol. Preto sa používa ešte jedna vrstva tzv. SSL Terminátor. Obyčajne to býva web server, ktorý spracuje https a zároveň aj HTTP/2.0 a vystupuje tu v roli Proxy servera. Najčastejšie je to Nginx alebo Apache.

Čo nás čaká a neminie

Na ďalší ročník leteckých dní SIAF 2018 sa pripravujeme už teraz. Okrem zmien na samotnom webe nás čakajú aj prípravy na zhruba o 30% vyššiu návštevnosť, tak isto aj väčšie množstvo zobrazených stránok. Chystáme sa preto ešte viac využiť možnosti HTTP/2.0 a tiež možnosti Varnish-u. Už teraz sa na to veľmi tešíme a ako to už býva, pripraveným šťastie praje....

Potrebujete aj Vy pomoc?

Ak máte aj vy projekt, ktorý už výkonnostne melie z posledného a neviete ako ďalej, neváhajte a kontaktujte nás akýmkoľvek spôsobom. Radi sa na Váš projekt pozrieme a poradíme Vám bezplatne ako zvýšiť rýchlosť načítania stránok aj pri veľkých návštevnostiach.