Varnish cache Nyomtatás

  • VPS, Szerver
  • 4

Rendszerüzemeltetéssel foglalkozók illetve azzal kapcsolatban állók jó eséllyel találkoztak már a Varnish1 nevű cache/gyorsítótár megoldás nevével. Jelen bejegyzésünk egy nagyon egyszerű és gyors beállítását mutatja be a rendszernek.

Tegyük fel, hogy már rendelkezünk egy beállított és működő webszerverrel, ezt szeretnénk gyorsítani kicsit. Ez igazából lehet Apache, Nginx vagy bármi, valószínűleg a default 80-as porton fog működni egy adott IP cím mögött - ez utóbbi legyen mondjuk 5.6.7.8 a példában.

  1. Módosítani kell a default web portot 80-ról pl. 81-re. Nem mennék bele, a használt kiszolgáló beállításainak megfelelően, tetszés szerint...
  2. Telepítsük a varnish -t. Ez ismét csak "hitvallás" kérdése, de: apt install varnish vagy éppen yum install varnish (epel repo).
  3. /etc/varnish/varnish.params szerkesztése
    1. VARNISH_LISTEN_PORT=80
    2. VARNISH_STORAGE="default=malloc,256M -s static=file,/var/lib/varnish/varnish_storage.bin,1G" - ezt még később részletezem
  4. /etc/varnish/default.vcl szerkesztése
    1. backend default {
          .host = "5.6.7.8"; #szerverünk külső IP címe
          .port = "81"; #webszerverünk módosított portja
      }
    2. sub vcl_backend_response {
          if (bereq.url ~ "\.(css|js|png|gif|jp(e?)g)|swf|ico") {
              unset beresp.http.cookie;
              set beresp.storage_hint = "static";
              set beresp.http.x-storage = "static";
          } else {
              set beresp.storage_hint = "default";
              set beresp.http.x-storage = "default";
          }
      }
  5. service apache restart
  6. service varnish start
  7. tesztelés, nézegetés böngészőben, közben pedig a varnishstat paranccsal konzolban

Nos akkor ahogy fentebb (3./2. pont) említettem kicsit nézzük meg a konfigunkat!
Alapértelmezetten 256MB Memory ALLOCated cache "partíciónk" van. Szerencsére a Varnish tud kezelni több típusú tárolót is, így én felvettem mellé egy 1GB méretű file típusú static nevű tárat is. Ide vonatkozik a 4./2. bekezdés is, így egy kis magyarázat ahhoz is: itt döntjük el, hogy mi is történjen. A megadott formátumú fájlok a static gyorsítóból kerülnek kiszolgálásra, minden más a defaultból.

Legyen az fizikai vagy virtuális szerver, ilyen szintű beállításokat úgy gondolom, hogy szakmailag mélyebb tudással rendelkezők végeznek. Nem (volt) célom kitérni a webszerverek beállításaira, ahogyan a Varnish további lehetőségeiben sem szeretnék elveszni. Célom sokkal inkább egy egyszerű gondolatébresztő megírása volt, mellyel igen jelentős (akár 50%-os) sebesség növekedés, ez által pedig felhasználói elégedettség érhető el weboldalainkon.


Linkek

1 https://varnish-cache.org/

Ajánlatunk

VPS csomagok
Fizikai szerverek


Hasznosnak találta ezt a választ?

« Vissza