Návštěvnost webu není konstantní. Například provoz ve službách streamování obsahu, jako je Netflix, stoupá přes střechu, když jsou vydány nové epizody populárních seriálů.
Tento prudký nárůst poptávky vytváří velký tlak na servery odpovědné za poskytování obsahu zákazníkovi. Kvůli tomu čelí služby streamování obsahu několika problémům, když jsou vydávány očekávané pořady.
Jak se tedy weby okamžitě škálují, když návštěvnost, kterou získávají, exponenciálně roste? No, používají reverzní proxy k vyrovnání provozu na svých webových stránkách – ale co je to reverzní proxy a jak fungují reverzní proxy?
Jak se váš počítač připojuje k webu?
Než se pustíte do reverzních proxy, je důležité pochopit, jak se váš počítač připojuje k webové stránce na internetu.
Jednoduše řečeno, internet není nic jiného než sada počítačů, které spolu komunikují. I web, ke kterému se připojujete, je počítač s daty webu uloženými na jeho pevném disku. Tento počítač je známý jako server, protože poskytuje ostatním počítačům obsah, který chtějí na internetu.
Když tedy otevřete webovou stránku na svém počítači, vše, co děláte, je komunikace s jiným počítačem připojeným k internetu.
To znamená, že pro připojení k webu musí vaše zařízení znát polohu serveru. Tyto informace poskytuje vašemu zařízení IP adresa serveru. Pro získání těchto informací se URL webové stránky převede na její IP adresu pomocí Překlad DNS, efektivně zaměňovat písmena v URL za konkrétní IP adresu webu. To je extrémně zjednodušená verze toho, jak DNS funguje.
Jakmile váš prohlížeč získá IP adresu, odešle požadavky pomocí protokolu HTTPS (Hypertext Transfer Protocol Secure) a server odešle data do vašeho systému.
Další věc, kterou je třeba o serverech pochopit, než se pustíte do proxy, je to, že webové stránky používají k distribuci svého obsahu několik serverů po celém světě. Kromě toho, namísto použití jediného výpočetního systému pro provoz všech funkcí webových stránek, společnosti používají architekturu mikroslužeb, kde různé výpočetní jednotky provádějí různé úkoly. Z tohoto důvodu nelze webovou stránku považovat za jeden počítač; místo toho je to sada počítačů, které spolupracují na poskytování obsahu zákazníkovi nejrychlejším možným způsobem.
Co je proxy?
Proxy je výpočetní zařízení, které je umístěno mezi serverem a počítačem, který odesílá požadavek (klient). Jednoduše řečeno, proxy není nic jiného než prostředník mezi vámi a webem. Ale proč je tento prostředník potřeba?
No, vidíte, když navštívíte webovou stránku, počítač, ke kterému se připojíte, obdrží všechny podrobnosti o vašem systému. Tato data zahrnují vaši IP adresu, data cookie a hardwarové/softwarové detaily vašeho systému.
Server požaduje výše uvedená data, aby pochopil, jak je třeba web zobrazit na vašem počítači.
Přestože jsou tyto informace nezbytné pro správné fungování webových stránek, umožňují společnostem sledovat vás online a odstraňují vaše soukromí. K vyřešení tohoto problému se používají dopředné proxy.
Jak název napovídá, forward proxy je výpočetní zařízení, které shromažďuje požadavky od klienta a odesílá je na server. Díky této architektuře si server myslí, že požadavky odesílá proxy, a vaše soukromí zůstává nedotčené.
To znamená, že existuje další typ proxy, který úzce spolupracuje se serverem a stejný je známý jako reverzní proxy.
Co je to reverzní proxy a jak to funguje?
Stejně jako dopředné proxy, reverzní proxy také řeší problém. Tento problém se však týká serverů. Stručně řečeno, reverzní proxy fungují přesně opačným způsobem ve srovnání s dopředným proxy.
Reverzní proxy v podstatě shromažďuje všechny požadavky na server. Po zachycení odešle reverzní proxy server požadavky s údaji, které hledáte. Díky tomu může reverzní proxy řídit provoz přistání na webové stránce.
Tato architektura návrhu řeší velký problém, pokud jde o distribuci obsahu. Vidíte, že pokud server obdrží ohromující počet požadavků během krátké doby, nemůže je zpracovat a klienti nemají přístup na web, který hledají.
Reverzní proxy řeší tento problém sledováním počtu požadavků odeslaných na server a snaží se je vyvážit mezi různými servery.
Výhody reverzních proxy
Kromě správy požadavků od různých klientů nabízí reverzní proxy několik výhod.
Ukládání do mezipaměti
Kromě správy provozu přijatého od klientů lze reverzní proxy použít k ukládání často požadovaných dat. Díky tomu nemusí proxy server žádat o získání dat. Místo toho může obsluhovat data ze své místní mezipaměti. Tento přístup se používá při zobrazování statických webových stránek, jako je tento článek.
Pokaždé, když chce uživatel přistupovat na webovou stránku, odešle se požadavek klienta na reverzní proxy. V tomto reverzním proxy sedí systém správy obsahu, který je zodpovědný za vyhledání obsahu na serveru a jeho odeslání uživateli. V tradičním přístupu by se CMS musel připojit k databázi MySQL, která uchovává data, což zvyšuje dobu přístupu na webovou stránku.
K vyřešení tohoto problému reverzní proxy ukládá oblíbené webové stránky lokálně. Díky tomu může proxy odesílat data přímo uživateli bez připojení k serveru, což zlepšuje výkon webových stránek.
Bezpečnostní
Když je reverzní proxy na místě, je to tvář vašeho webu. V důsledku toho se útočník nemůže dostat přímo na interní servery webu. Kromě toho lze k odražení použít reverzní proxy DDoS útoky. K tomu se může reverzní proxy podívat na IP adresu klienta, který se pokouší provést DDoS útok, a zablokovat jeho přístup k serveru.
Rychlejší dešifrování dat
Většina webových stránek na internetu používá k bezpečnému přenosu dat HTTPS. Díky tomu jsou všechna data přicházející na server šifrována. Proto musí server dešifrovat přijatý provoz a předat data klientovi. K vyřešení tohoto problému lze použít reverzní proxy k dešifrování dat, čímž se sníží zatížení serveru.
Globální vyrovnávání zátěže serveru
Populární webové stránky jako Netflix, Google a Amazon mají servery po celém světě. Když tedy uživatel zadá požadavek na tyto webové stránky, může být přesměrován na kterýkoli z jeho serverů. Pokud je požadavek odeslán na server daleko od klienta, doba přístupu na web se prodlouží. Chcete-li tento problém vyřešit, reverzní proxy směrují požadavky klientů na nejbližší servery, aby se zlepšil výkon webu.
Reverzní proxy zrychlí váš internet
Mezi klientem a serverem je umístěn reverzní proxy, který pomáhá efektivně řídit provoz. A nejen to, reverzní proxy zlepšují bezpečnost a spolehlivost nabízenou serverem.
To znamená, že reverzní proxy vyžadují další výpočetní výkon a síťové zdroje a reverzní proxy mohou vytvořit jediný bod selhání webu.