Differences

This shows you the differences between two versions of the page.

Link to this comparison view

saisp:labs:09:contents:04 [2014/05/05 00:44]
razvan.deaconescu
saisp:labs:09:contents:04 [2014/05/05 13:02] (current)
razvan.deaconescu
Line 1: Line 1:
-==== 04. Caching în Varnish ====+==== 04. [15p] Caching în Varnish ====
  
 Vrem să vedem cum se comportă cache-ul în Varnish. Intrările în Varnish sunt cache-uite pentru o perioadă de timp înainte să expire. După expirarea timpului respectiv, se realizează o nouă cerere către serverul web pentru obținerea din nou a paginii. Vrem să vedem cum se comportă cache-ul în Varnish. Intrările în Varnish sunt cache-uite pentru o perioadă de timp înainte să expire. După expirarea timpului respectiv, se realizează o nouă cerere către serverul web pentru obținerea din nou a paginii.
Line 27: Line 27:
 Urmăriți indicațiile de [[https://​www.varnish-cache.org/​docs/​3.0/​tutorial/​purging.html#​bans|aici]]. Folosiți comanda ''​varnishadm''​ pentru a accesa CLI-ul de configurare Varnish. Urmăriți indicațiile de [[https://​www.varnish-cache.org/​docs/​3.0/​tutorial/​purging.html#​bans|aici]]. Folosiți comanda ''​varnishadm''​ pentru a accesa CLI-ul de configurare Varnish.
 </​note>​ </​note>​
 +
 +<​solution -hidden>
 +Pentru început așteptăm să expire cache-ul Varnish pentru pagina ''/​data/​100k.dat''​ după care o reaccesăm de pe sistemul gazdă (''​mjolnir''​). În ''​varnishlog''​ va apărea un mesaj precum cel de mai jos:<​code>​
 +root@varnish:​~#​ varnishlog -i VCL_Call
 +   12 BackendClose - default
 +   12 BackendOpen ​ b default 192.168.0.3 42737 192.168.0.2 80
 +   12 BackendReuse b default
 +   11 SessionOpen ​ c 192.168.0.1 37545 :80
 +   11 VCL_call ​    c recv
 +   11 VCL_call ​    c hash
 +   11 VCL_call ​    c miss
 +   11 VCL_call ​    c fetch
 +   11 VCL_call ​    c deliver
 +   11 ReqEnd ​      c 349371766 1399269441.987185955 1399269442.000175238 0.000062466 0.005365372 0.007623911
 +   11 SessionClose c timeout
 +   11 SessionOpen ​ c 192.168.0.1 37548 :80
 +   11 VCL_call ​    c recv
 +   11 VCL_call ​    c hash
 +   11 VCL_call ​    c hit
 +   11 VCL_call ​    c deliver
 +   11 ReqEnd ​      c 349371767 1399269494.260819435 1399269494.269623995 0.000100136 0.000047445 0.008757114
 +</​code>​
 +Mai sus au fost două accese. Primul acces a generat ''​miss'',​ iar al doilea a generat ''​hit''​. Pentru a anula cache-ul paginii ''/​data/​100k.dat''​ folosim comanda ''​ban''​ în consola ''​varnishadm'':<​code>​
 +root@varnish:​~#​ varnishadm ​
 +[...]
 +varnish> ban req.http.host == "​192.168.0.3"​ && req.url ~ "​.dat$"​
 +200
 +</​code>​
 +După această rulare, accesăm din nou pagina ''/​data/​100k.dat''​ iar output-ul comenzii ''​varnishlog''​ va afișa un ''​miss'':<​code>​
 +   12 BackendClose b default
 +   12 BackendOpen ​ b default 192.168.0.3 42742 192.168.0.2 80
 +   12 BackendReuse b default
 +   11 SessionOpen ​ c 192.168.0.1 37566 :80
 +   11 VCL_call ​    c recv
 +   11 VCL_call ​    c hash
 +   11 VCL_call ​    c miss
 +   11 VCL_call ​    c fetch
 +   11 VCL_call ​    c deliver
 +   11 ReqEnd ​      c 349371771 1399269730.749448776 1399269730.762530804 0.000076056 0.006940126 0.006141901
 +</​code>​
 +</​solution>​
saisp/labs/09/contents/04.1399239868.txt.gz · Last modified: 2014/05/05 00:44 by razvan.deaconescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0