Vanrish 2.1.5 eating memory, hit % decrease
Jean-Francois Laurens
jean-francois.laurens at rts.ch
Thu Apr 7 12:38:46 CEST 2011
Hi there !
I recently updated varnish from version 2.0.6 to 2.1.5 on a centos 5.4
server.
After pretty much a day running 2.1.5, the system went out of memory. The
server has 8G of memory and we specified a file of 50Gb as varnish cache
file.
I changed some options yesterday following Kristian Lyngstol recommendations
( http://kristianlyng.wordpress.com/2009/10/19/high-end-varnish-tuning/) and
did a restart so the system is now running.
I decreased the size of the cache file to 40Gb to.
Here is a top output where you can see that varnish is consuming pretty much
all the memory available:
top -cbn 1
top - 11:54:24 up 625 days, 19:51, 1 user, load average: 0.52, 0.41, 0.36
Tasks: 110 total, 1 running, 109 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.1%us, 0.2%sy, 0.0%ni, 99.1%id, 0.5%wa, 0.0%hi, 0.1%si,
0.0%st
Mem: 8177764k total, 8132712k used, 45052k free, 13100k buffers
Swap: 4096564k total, 263324k used, 3833240k free, 7337568k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3733 varnish 15 0 44.6g 7.1g 6.7g S 2.0 91.4 9:56.07
/usr/sbin/varnishd -P /var/run/varnish.pid -a :80 -f
/etc/varnish/default.vcl -T 0.0.0.0:6082 -t 120 -w 100,3000,120 -u varnish
-g varn
....
3732 root 15 0 106m 720 492 S 0.0 0.0 0:00.72
/usr/sbin/varnishd -P /var/run/varnish.pid -a :80 -f
/etc/varnish/default.vcl -T 0.0.0.0:6082 -t 120 -w 100,3000,120 -u varnish
-g varn
Regularly it¹s consuming more and more swap aswell:
>From 15mn ago:
free -m
total used free shared buffers cached
Mem: 7986 7941 44 0 12 7163
-/+ buffers/cache: 765 7220
Swap: 4000 258 3742
>From 5 mn ago:
free -m
total used free shared buffers cached
Mem: 7986 7940 45 0 15 7163
-/+ buffers/cache: 761 7224
Swap: 4000 260 3739
>From 1mn ago:
free -m
total used free shared buffers cached
Mem: 7986 7940 45 0 17 7160
-/+ buffers/cache: 763 7222
Swap: 4000 262 3737
I understood that varnish relies on the system itself for memory allocation.
Could we say that the bigger you file cache size is the more varnish need
memory ?
Or Am I facing an issue with my vcl that could have this side effect or ??
In addition to this I've seen the percentage hit decreasing from 65% average
with 2.0.6 to 40% with 2.1.5.
Apart from changing obj to beresp in the vcl_fetch, I had to specify
return(deliver) or return(pass) instead of only deliver or pass.
Would it be a reason for this ?
Would you be able to give me pointers for me to dig a bit more ?
I Attached a plot from cacti wich would show the difference between 2.0.6
and 2.1.5 (the gap is due to the time to update the server, the trafic was
sent to an other server ...)
Thanks in advance for your advices !
Jean-Francois Laurens
Ingénieur Système Unix
Resources et Développement
Secteur Backend
RTS - Radio Télévision Suisse
Quai Ernest-Ansermet 20
Case postale 234
CH - 1211 Genève 8
T +41 (0)58 236 81 63
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20110407/f8521454/attachment-0003.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: graph_vanrish01.png
Type: application/octet-stream
Size: 27804 bytes
Desc: not available
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20110407/f8521454/attachment-0003.obj>
More information about the varnish-misc
mailing list