Pöördproksi

Allikas: Vikipeedia

Pöördproksi (ingl. reverse proxy) on proksi, mis paistab klientidele kui harilik server. Pöördproksi võtab vastu päringud klientidelt, edastab need serveri(te)le ja vahendab serveri poolt saadud päringuvastused klientidele tagasi. Pöördproksi paigaldatakse reeglina serveri(te) lähedale ning see vahendab paljude klientide päringuid kindlatele enda poolt teenindatavatele serverirakendustele ja/või veebisaitidele. Termin pöördproksi tuleneb sellest, et ta tundub vastandina harilikule e. päriproksile (ingl. forward proxy), mis vahendab klientide päringuid paljudele erinevatele serveritele ning on sageli paigaldatud klientide lähedale.

Pöördproksit võidakse kasutada järgmistel põhjustel:

  • Krüpteerimiseks (krüpteerimine) ja/või selle kiirendamiseks. Kõrgendatud andmeturbenõuetega serverirakenduse korral võib krüpteerimise delegeerida pöördproksile, millele on paidalgatud selleks otstarbeks ette nähtud tarkvara ja/või riistvara. Siis ei pea rakendusserverid ise krüpteerimist teostama. See võib lihtsustada rakenduse arhitektuuri (näiteks SSL (ingl. Secure Sockets Layer) puhul ei pea iga rakendusserver omama eraldi SSL sertifikaati).
  • Töökoormuse ühtlustamine (ingl. load balancing). Kõrge töökoormusega serverirakenduste puhul kasutatakse sageli pöördproksit, mis oskab töökoormust jagada mitme serveri vahel. Selleks sisaldab pöördproksi spetsiaalset tarkvara ja/või riistvara. Näiteks edastab pöördproksi kliendi poolt tuleva uue päringu rakendusserveriks oleva klastri (ingl. cluster) sellele sõlmele (ingl. node), mis parasjagu töötleb kõige väiksemat hulka päringuid või teenindab kõige väiksemat hulka kliente.
  • Staatilise iseloomuga päringuvastuste saatmiseks ja/või puhverdamiseks. Selline pöördproksi vähendab rakendusserveri töökoormust, vastates ise serveri asemel päringutele, millele vastamine ei nõua igakordset serveripoolset arvutustööd.
  • Tihenduseks e. pakkimiseks (ingl. compression). Spetsiaalset tarkvara ja/või riistvara sisaldav pöördproksi võib serveri poolt genereeritud päringuvastuseid tihendada. See vähendab koormust võrgule ning kiirendab päringuvastuse kohalejõudmist kliendile.
  • Aeglastele klientidele päringuvastuste ettelaadimiseks (ingl. Spoon Feeding). Kui klient suudab päringuvastust laadida ainult aeglasemini kui server selle genereerib, siis võib kasutada spetsiaalset pöördproksit, mis laeb kiiresti vastuse serverilt ning võimaldab seejärel kliendil seda pöördproksilt aeglaselt laadida. Selliselt vabaneb serveriresurss varem.
  • Andmeturbeks. Proksiserver võib pakkuda teatud andmeturbevõimalusi. Näiteks aitab see vältida teatud juurdepääsu rakendusserveri muudele komponentidele kui rakendus ise. Sageli loetakse seda aga teisejärgulisels (kuid mitte siiski ebaoluliseks) andmeturbelahenduseks, sest eelkõige tuleb turvata rakendust ennast.