Akcelerace Webu pro lepší dynamiku

Mezi trendy posledních měsíců či několika málo let patří i zvyšující se podíl dynamického obsahu Webů oproti st...


Mezi trendy posledních měsíců či několika málo let patří i zvyšující se podíl
dynamického obsahu Webů oproti statickému. Neznamená to nic jiného než to, že
webové stránky jsou generovány podle požadavků s obsahem zaměřeným individuálně
na daného návštěvníka resp. zákazníka. Proces generování stránek je však potom
časově mnohem náročnější.Greg Govatos
Velmi jednoduchým příkladem dynamického obsahu Webu může být osobní (jmenovité)
uvítání, které se objeví vždy, když se zákazník dostane na stránky vaší firmy
či internetového obchodu. Promyšlenější koncepcí dynamického Webu může být
např. nabídka doporučení založených na předchozích interakcích nebo nákupech.
Dynamické stránky v porovnání se statickými poskytují zákazníkům mnohem vyšší
komfort a jsou tak bezesporu dobrým nástrojem pro udržení si jejich přízně do
budoucna nicméně jejich generování znamená pro server nezanedbatelnou zátěž.
Výsledkem může být vznik úzkého hrdla v serveru a pro koncového uživatele vyšší
doba odezvy. Pro kompenzaci latencí spojených s tvorbou dynamických webových
stránek se začíná používat nová třída produktů označovaných jako akcelerátory
dynamického obsahu. Jedná se o akcelerátory na serverové straně, které
inteligentně rozdělují data do aplikačních serverů a zajišťují mnohem rychlejší
tvorbu stránek než v případě, že tento proces není optimalizován.

Přenos obsahu
Poté, co uživatel zadá URL požadovaného Webu, je stránka vytvořena aplikačním
serverem ten spouští skript, který zahrnuje potřebné procesy, jako je vyhledání
požadovaného obsahu v databázovém systému atd. Výsledkem je HTML "náčrt" volané
stránky. Ta je poté zobrazena browserem v textové podobě, proto je přenos v
této fázi rychlý a nenáročný na šířku pásma. Potom prohlížeč stahuje grafiku
každý objekt z příslušné serverové adresy odpovídající daným URL v HTML stránce.
Stahování je obvykle prohlížečem limitováno na 2 až 4 objekty současně, přitom
typický Web může obsahovat i 30-40 vestavěných objektů. To klade pochopitelně
značné nároky na komunikaci mezi browserem a serverem.
V několika posledních letech byl přenos objektů úspěšně optimalizován využitím
síťových cache pamětí. Caching sloužící k minimalizaci času pro stažení objektu
je přitom možno realizovat buď pomocí dostupných produktů, nebo jako
poskytovanou službu. Nicméně samotné "kešování" řeší problém latence způsobené
sítí, nikoliv latenci samotného serveru. To se týká především generování
dynamických webových stránek, které obvykle tvoří zhruba 40 % času potřebného k
jejich načtení browserem.
Jedná se o poměrně komplexní záležitost, zahrnující mimo jiné např. problém
přístupu k databázovému a/nebo souborovému systému či transformace a
formátování obsahu (konverze XML do HTML apod.). Každá taková úloha vyžaduje
nezanedbatelnou část serverové výpočetní kapacity, což může vést i k potížím
při stahování. Dokud není stránka vytvořena, jsou následující kroky celého
procesu pozastaveny.
Moderní alternativa Akcelerátory dynamického obsahu těží v principu z toho, že
velká část obsahu v dynamicky generované stránce je opětovně využitelná.
Akcelerátor ukládá pro rychlejší přístup do cache paměti jednotlivé komponenty
stránky komponentou rozumíme určitou skupinu dat, která je na stránce
zobrazována současně, např. cena produktu a jeho vlastnosti nebo také denní
zprávy.
Aplikační server posílá pro každou komponentu stránky požadavek akcelerátoru
dynamického obsahu. Jestliže se potřebná data nacházejí v cache paměti
akcelerátoru, jsou ihned poskytnuta aplikačnímu serveru v HTML formátu (tedy
připravená k zobrazení), aniž by bylo nutné je opětovně vyhledávat a provádět
vstupně/výstupní úlohy spojené tvorbou takové komponenty.
Výhody akcelerátorů
Cachingem obsahu dynamických webových stránek se tedy získají 3 klíčové výhody:
nemusejí být vždy vykonávány skriptovací programy
není třeba vyhledávat data v lokálních nebo vzdálených databázových systémech
příslušná data není nutné konvertovat z formátů jako např. XML nebo WML, do HTML
Takto dochází k dosti výraznému snížení zátěže kladené na servery a paměťové
subsytémy. V neposlední řadě se také podstatně snižuje doba potřebná pro
download příslušné stránky browserem na straně uživatele. Díky tomu, že
požadavky na často vyhledávaný obsah provádí vysoce výkonné zařízení pro
caching, se dramaticky zvyšuje škálovatelnost webových stránek.

Nástroje pro rychlý Web
Pro zvýšení rychlosti internetových transakcí lze dnes využít několik druhů
zařízení vykonávajících určité specifické úlohy. Jedná se např. o kompenzátory
výkonu, webové switche, cache nebo procesory zajišťující bezpečnost.
lWebové cache slouží k ukládání často či opakovaně požadovaných dat (především
statického obsahu), která pak poskytují o 50-80 % rychleji než samotný server.
lWebové switche u těchto zařízení je možné nastavit kritéria, podle nichž
rozdělují požadavky např. druh požadavku nebo typ uživatele. Poté je tyto
požadavky přesměrují např. na server určený pro odpovídající úlohy.
lZařízení pro vyrovnávání zátěže zabezpečují posílání požadavků k serveru (či
jinému zařízení), který je v daném okamžiku nejméně zatížen. lSSL (Secure
Socket Layer) procesory umožňují provádět šifrovací a dešifrovací procesy
nezbytné pro bezpečnost transakcí na samostatném zařízení a snížit tak zatížení
serveru.
Předpokládá se, že přístroje uvedeného typu budou v několika následujících
letech dosti populární, např. podle odhadů GartnerGroup by se měl tento trh
rozrůst z loňského objemu 370 milionů dolarů až na 3,38 miliard v roce 2003.
1 0136 / wep









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.