Problém s načítáním webových stránek

  Chyby a problémy

Pokud má problém prohlížeč s přístupem na webové stránky může být příčin více. Postupně si projdeme jednotlivé části procesu a zkusíme najít správné řešení. Zároveň si ukážeme pár tipů, které mohou značně urychlit některé procesy a tím i zrychlit načítání stránek v prohlížeči.

Některé procesy jsou zkráceny, protože se jedná o rozsáhlou problematiku. Do budoucna si je můžeme dále rozvést.

Proces přístupu prohlížeče k stránkám

Aby jste si mohli procházet internetové stránky musí prohlížeč prostřednictvím počítače udělat několik úkonů.

Když zadáte do prohlížeče doménu, kterou chcete navštívit nejdříve se váš počítač pokusí vyžádat IP adresu serveru, na který doména směřuje z DNS serveru. Jakmile jí získá dotáže se daného serveru s touto IP adresou na obsah domény.

Vše je na první pohled jednoduché, ovšem každý z těchto částí může mít vliv na rychlost načítání webových stránek.

Rychlost a dostupnost DNS serverů

Jako uživatel připojený k internetu většinou získáte adresu DNS serverů od svého poskytovatele. Jestli je mezi vámi a poskytovatelem například router, tak slouží jako mezičlánek. Aktuální stav zjistíte pomocí příkazového řádku (cmd.exe) a příkazem ipconfig.exe /all u své síťové karty pak dohledejte DHCP a DNS.

Pomocí příkazů ipconfig.exe /all se dozvíme, jaké DNS servery využívá náš počítač
Pomocí příkazů ipconfig.exe /all se dozvíme, jaké DNS servery využívá náš počítač

Jejich rychlost si pak ověřte přes příkaz ping. Jako parametr zadejte jejich IP adresu. V případě, že máte podezření na jejich vypadávání, přidejte ještě -t a průběžně sledujte jak se chovají. Pokud jsou prodlevy velké zkuste změnit DNS na 8.8.8.8 a 8.8.4.4 to jsou DNS od Google. Mají také výhodu, že se rychle obnovují, což oceníte pokud doména změní hosting a nechcete dlouho vidět obsah.

Příkazem PING si ověříme rychlost odezvy DNS serveru 8.8.8.8 a 8.8.4.4
Příkazem PING si ověříme rychlost odezvy DNS serveru 8.8.8.8 a 8.8.4.4

Z domova menší prodleva nevadí. Na doménu se zeptá váš počítač jen při první návštěvě a pak v pravidelných intervalech, které mohou být v řádech minut anebo i dnů. Nejedná se tedy o nic, co by výrazně zpomalovalo vaše prohlížení stránek na jedné doméně. Problém to je když jsou výpadky. Pak se na stránku nemusíte vůbec dostat. Osobně používám DNS od Google. Důvodů je více, ale to můžeme probrat u dalšího článku.

DNS využívá i vaše webová stránka. Ukládají se do ní data k doméně, například jestli pracuje s IPv6 anebo na ní směřuje email. V podstatě počítač si stahuje tyto data a pak s nimi pracuje. Ačkoliv je nepravděpodobné, že by mohl být jmenný server od poskytovatele webhostingu pomalý, může se stát, že je třeba rozbitý anebo je s ním jiný problém. V ČR už se stalo, že byl DNS server cílem masivního DDoS útoku. Rovněž si jej můžete otestovat přes ping a zjistit jestli funguje správně. V případě problémů jej pak nahradit jiným, ale pokud je k webhostingu jako součást služby, tak by měl být profesionálně nakonfigurovaný, tedy je lepší kontaktovat provozovatele jestli tam nemá něco špatně. Popravdě tu jde i o bezpečnost. Využívat službu třetí strany není v tomto případě ideálním řešením.

Komunikace mezi serverem a prohlížečem

Server poskytuje data pro prohlížeč, který je pak zobrazuje. Nutno podotknout, že ne všechna data jsou poskytována jedním serverem při vykreslování samotné stránky. Dnešní webové prezentace se skládají s desítek, občas i stovek elementů, které musí prohlížeč vykreslovat. Různé prohlížeče zvládají odlišný počet vykreslování elementů naráz.

Odezva serveru

Rychlost komunikace mezi serverem a vašim počítačem si opět můžete otestovat přes příkaz ping. Stačí zadat ping cilovadomena anebo ping ipadresa. Uvědomte si, že pokud je prodleva třeba 200 ms, tak ke každé sérii elementů, které bude prohlížeč vykreslovat a jsou umístěné na daném serveru se musí přidat tato hodnota, takže čím méně tím lépe. Bude samozřejmě záležet i na rychlosti vašeho připojení. Dejme tomu, že by se rychlost v ms neměla výrazně lišit od pingu na Seznam.cz popřípadě místní pobočky Google, pokud web nemáte umístění v Česku.

Velikost souborů

Další podíl na rychlosti má generování stránky serverem. Pokud pomineme čistě textové dokumenty bez jakéhokoliv formátování (TXT, HTML) a multimédia (JPG, AVI), tak server většinou pracuje s nějakým skriptem (PHP, ASP) jeho zpracování a vyhodnocení mu zabere nějaký čas. T

TTFB

o co potřebujete změřit se nazývá TTFB (time to first bite), neboli čas do prvního bitu. Technicky je to okamžik, kdy nám začne server posílat vygenerovanou stránku (provedl všechny výpočty). Tuto hodnotu nejlépe zjistíte přes nástroj na měření rychlosti. Zkuste třeba tools.pingdom.com. Nezapomeňte si jako měřící bod zvolit Amsterdam. Pokud se stránka generuje nad 1 vteřinu zvažte optimalizaci, jestli je čas nad 2 vteřiny, tak to už je dlouho. Pozor ve většině případech je třeba optimalizovat web nikoliv server/hosting. Pouze pokud by se projevovali pravidelné nevysvětlitelné výkyvy u TTFB, které by neměli nic společného se samotným webem (moc návštěvnosti, aktualizace, generování individuální stránky), tak je vhodné kontaktovat odborníka na optimalizaci, který by vám doporučil změnit poskytovatele.

Cache

TTFB výrazně ovlivňuje zapnuté cachování. Jedná se o proces, kdy si webová stránka pro určité specifické návštěvníky, předgeneruje obsah a ten znovugeneruje jen pokud dojde k jeho úpravě. Pokud děláte test TTFB a víte, že používáte cache udělejte jej dvakrát za sebou.

Cache využívá mimo webové stránky i server. Například obsah nejdříve zkomprimuje, pošle prohlížeči, ten si jej rozbalí a začne vykreslovat. V podstatě se tak ušetří přenosová data vzroste výkon počítače samotného. Dříve to bylo celkem aktuální témat, dnes už však jsou připojení velice rychlé a výkon také někde jinde. Takže se komprimuje vše co se dá 🙂

Vykreslení stránky prohlížečem

Takže máme za sebou vygenerovanou stránku a teď jí obdržel náš prohlížeč. Než jí vykreslí musí si stáhnout všechno potřebné. Tohle je problém zvláště lidí s pomalejším připojením, kteří například musí čekat na velký obrázek na pozadí. Mají tak bílou obrazovku a pocit, že web je pomalý. Ve skutečnosti je pomalé jejich připojení. Na druhou stranu to není jejich chyba ale vaše, protože existují metody, postupy a také doporučení, které dokáží vykreslování webu znatelně zrychlit. Anebo jej vykreslovat postupně tak, že to nebude vadit ve využívání. Třeba onen velký obrázek se může nahrát dodatečně a prozatím místo něj být třeba vhodný barevný podklad.

Tento druh optimalizace je velice náročnou záležitostí a vyžaduje poměrně hodně znalostí z oboru webdesignu a kódování šablon. V každém případě pokud vám u testu rychlosti vyskočil velmi dobrý čas u TTFB, ale stránka se načítá pomalu, zřejmě se nějaké optimalizaci, alespoň té částečné, nevyhnete.

Mimochodem test vám zároveň ukázal, které části se stahují odkud a s jakou rychlostí. Pomocí něj můžete najít slabé místa, která brzdí kompletní načtení webu. Jedním s řešení je i jejich odstranění. Všeho moc škodí a to i na webu.

Napiš komentář