<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:D="DAV:" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal>I’m running Varnish 1.1.1 on Centos 5 x86_64. varnishd
has been running for about 20 days, but now the machine is using about 100% of
the CPU, and most of it is in iowait because 100% of the swap is being used by
varnishd (this is happening on about 8 different cache servers). <o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>Is this a known issue? Or am I doing something wrong (with
the command line arguments or whatnot)?<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>Here is the relevant information:<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>Command line arguments:<o:p></o:p></p>

<p class=MsoNormal>/usr/sbin/varnishd -a :80 -f /etc/varnish/photo.vcl -T
127.0.0.1:6082 -t 120 -w 10,1000,120 -s file,/c01/varnish/varnish_storage.bin ,40%
-u varnish -g varnish -P /var/run/varnish.pid<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>df of /c01:<o:p></o:p></p>

<p class=MsoNormal>/dev/sdb1            
460G  102G  334G  24% /c01 (it’s a raid 10 array of 14
73gb disks)<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>uname –a:<o:p></o:p></p>

<p class=MsoNormal>Linux <hostname> 2.6.18-8.1.8.el5 #1 SMP Tue Jul 10
06:39:17 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>Output of vanishstat -1:<o:p></o:p></p>

<p class=MsoNormal>client_conn         
30637407        17.88 Client connections
accepted<o:p></o:p></p>

<p class=MsoNormal>client_req           69880298       
40.78 Client requests received<o:p></o:p></p>

<p class=MsoNormal>cache_hit           
65771178        38.38 Cache hits<o:p></o:p></p>

<p class=MsoNormal>cache_hitpass             
82         0.00 Cache hits for pass<o:p></o:p></p>

<p class=MsoNormal>cache_miss           
4107980         2.40 Cache misses<o:p></o:p></p>

<p class=MsoNormal>backend_conn         
4108677         2.40 Backend
connections success<o:p></o:p></p>

<p class=MsoNormal>backend_fail               
0         0.00 Backend connections
failures<o:p></o:p></p>

<p class=MsoNormal>backend_reuse        
3771264         2.20 Backend
connections reuses<o:p></o:p></p>

<p class=MsoNormal>backend_recycle      
3920436         2.29 Backend
connections recycles<o:p></o:p></p>

<p class=MsoNormal>backend_unused            
16         0.00 Backend connections
unused<o:p></o:p></p>

<p class=MsoNormal>n_srcaddr               
1471          .   N
struct srcaddr<o:p></o:p></p>

<p class=MsoNormal>n_srcaddr_act             
99          .   N active
struct srcaddr<o:p></o:p></p>

<p class=MsoNormal>n_sess_mem               
361          .   N
struct sess_mem<o:p></o:p></p>

<p class=MsoNormal>n_sess                   
129          .   N
struct sess<o:p></o:p></p>

<p class=MsoNormal>n_object             
4171343          .   N
struct object<o:p></o:p></p>

<p class=MsoNormal>n_objecthead         
4171347          .   N
struct objecthead<o:p></o:p></p>

<p class=MsoNormal>n_smf                
4107787          .   N
struct smf<o:p></o:p></p>

<p class=MsoNormal>n_smf_frag                  0         
.   N small free smf<o:p></o:p></p>

<p class=MsoNormal>n_smf_large                
1          .   N large
free smf<o:p></o:p></p>

<p class=MsoNormal>n_vbe_conn               
145          .   N
struct vbe_conn<o:p></o:p></p>

<p class=MsoNormal>n_wrk                     
56          .   N worker
threads<o:p></o:p></p>

<p class=MsoNormal>n_wrk_create           
70814         0.04 N worker threads
created<o:p></o:p></p>

<p class=MsoNormal>n_wrk_failed               
0         0.00 N worker threads not
created<o:p></o:p></p>

<p class=MsoNormal>n_wrk_max                  
0         0.00 N worker threads limited<o:p></o:p></p>

<p class=MsoNormal>n_wrk_queue                
0         0.00 N queued work requests<o:p></o:p></p>

<p class=MsoNormal>n_wrk_overflow          70814        
0.04 N overflowed work requests<o:p></o:p></p>

<p class=MsoNormal>n_wrk_drop                 
0         0.00 N dropped work requests<o:p></o:p></p>

<p class=MsoNormal>n_expired                
195          .   N
expired objects<o:p></o:p></p>

<p class=MsoNormal>n_deathrow                 
0          .   N objects
on deathrow<o:p></o:p></p>

<p class=MsoNormal>losthdr                     0        
0.00 HTTP header overflows<o:p></o:p></p>

<p class=MsoNormal>n_objsendfile              
0         0.00 Objects sent with
sendfile<o:p></o:p></p>

<p class=MsoNormal>n_objwrite          
69142017        40.35 Objects sent with
write<o:p></o:p></p>

<p class=MsoNormal>s_sess              
30637382        17.88 Total Sessions<o:p></o:p></p>

<p class=MsoNormal>s_req               
69880318        40.78 Total Requests<o:p></o:p></p>

<p class=MsoNormal>s_pipe                    
41         0.00 Total pipe<o:p></o:p></p>

<p class=MsoNormal>s_pass                     
0         0.00 Total pass<o:p></o:p></p>

<p class=MsoNormal>s_fetch              
4108636         2.40 Total fetch<o:p></o:p></p>

<p class=MsoNormal>s_hdrbytes       
23065938774     13461.07 Total header bytes<o:p></o:p></p>

<p class=MsoNormal>s_bodybytes     
1500010438157    875392.50 Total body bytes<o:p></o:p></p>

<p class=MsoNormal>sess_closed          
2794850         1.63 Session Closed<o:p></o:p></p>

<p class=MsoNormal>sess_pipeline          
85042         0.05 Session Pipeline<o:p></o:p></p>

<p class=MsoNormal>sess_readahead              0        
0.00 Session Read Ahead<o:p></o:p></p>

<p class=MsoNormal>sess_herd           
67587880        39.44 Session herd<o:p></o:p></p>

<p class=MsoNormal>shm_records       
3193762280      1863.85 SHM records<o:p></o:p></p>

<p class=MsoNormal>shm_writes         
401219061       234.15 SHM writes<o:p></o:p></p>

<p class=MsoNormal>shm_cont               
97272         0.06 SHM MTX contention<o:p></o:p></p>

<p class=MsoNormal>sm_nreq              
4109108         2.40 allocator requests<o:p></o:p></p>

<p class=MsoNormal>sm_nobj              
4107786          .  
outstanding allocations<o:p></o:p></p>

<p class=MsoNormal>sm_balloc        
51938721792          .  
bytes allocated<o:p></o:p></p>

<p class=MsoNormal>sm_bfree         
57256402944          .  
bytes free<o:p></o:p></p>

<p class=MsoNormal>backend_req          
4108636         2.40 Backend requests
made<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>VCL Code:<o:p></o:p></p>

<p class=MsoNormal>backend default {<o:p></o:p></p>

<p class=MsoNormal>        set backend.host
= "127.0.0.1";<o:p></o:p></p>

<p class=MsoNormal>        set backend.port
= "81";<o:p></o:p></p>

<p class=MsoNormal>}<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>sub vcl_recv {<o:p></o:p></p>

<p class=MsoNormal>        if (req.request
== "GET" && req.http.cookie) {<o:p></o:p></p>

<p class=MsoNormal>               
lookup;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal>}<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>sub vcl_fetch {<o:p></o:p></p>

<p class=MsoNormal>        if (obj.ttl <
3600s) {<o:p></o:p></p>

<p class=MsoNormal>               
set obj.ttl = 3600s;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal>}<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>sub vcl_miss {<o:p></o:p></p>

<p class=MsoNormal>        if (req.url ~
"^/g/([a-f0-9])([a-f0-9])([a-f0-9]{30})\.([a-z0-9]{3,4})$") {<o:p></o:p></p>

<p class=MsoNormal>               
set bereq.url = regsub(req.url,
"^/g/([a-f0-9])([a-f0-9])([a-f0-9]{30})\.([a-z0-9]{3,4})$",
"/$1/$2/$1$2$3.$4");<o:p></o:p></p>

<p class=MsoNormal>               
fetch;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>        if (req.url ~
"^/g/([a-f0-9])([a-f0-9])([a-f0-9]{30})$") {<o:p></o:p></p>

<p class=MsoNormal>               
set bereq.url = regsub(req.url,
"^/g/([a-f0-9])([a-f0-9])([a-f0-9]{30})$",
"/$1/$2/$1$2$3");<o:p></o:p></p>

<p class=MsoNormal>               
fetch;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>        if (req.url ~
"^/g/i/([a-f0-9])([a-f0-9])([a-f0-9]{30})\.([a-z0-9]{3,4})$") {<o:p></o:p></p>

<p class=MsoNormal>               
set bereq.url = regsub(req.url,
"^/g/i/([a-f0-9])([a-f0-9])([a-f0-9]{30})\.([a-z0-9]{3,4})$",
"/fullsize/$1/$2/$1$2$3.$4");<o:p></o:p></p>

<p class=MsoNormal>               
fetch;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>        if (req.url ~
"^/g/i/([a-f0-9])([a-f0-9])([a-f0-9]{30})$") {<o:p></o:p></p>

<p class=MsoNormal>               
set bereq.url = regsub(req.url,
"^/g/i/([a-f0-9])([a-f0-9])([a-f0-9]{30})$",
"/fullsize/$1/$2/$1$2$3");<o:p></o:p></p>

<p class=MsoNormal>               
fetch;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>        if (req.url ~
"^/g/v/([a-f0-9])([a-f0-9])([a-f0-9]{30})\.jpg$") {<o:p></o:p></p>

<p class=MsoNormal>               
set bereq.url = regsub(req.url,
"^/g/v/([a-f0-9])([a-f0-9])([a-f0-9]{30})\.jpg$",
"/video/$1/$2/$1$2$3/thumb_hi.jpg");<o:p></o:p></p>

<p class=MsoNormal>               
fetch;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>        if (req.url ~
"^/g/v/([a-f0-9])([a-f0-9])([a-f0-9]{30})_([0-9]{5})\.jpg$") {<o:p></o:p></p>

<p class=MsoNormal>               
set bereq.url = regsub(req.url,
"^/g/v/([a-f0-9])([a-f0-9])([a-f0-9]{30})_([0-9]{5})\.jpg$",
"/video/$1/$2/$1$2$3/frames/frame$4.jpg");<o:p></o:p></p>

<p class=MsoNormal>               
fetch;<o:p></o:p></p>

<p class=MsoNormal>        }<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>        set bereq.url =
"/404.html";<o:p></o:p></p>

<p class=MsoNormal>        fetch;<o:p></o:p></p>

<p class=MsoNormal>}<o:p></o:p></p>

<p class=MsoNormal><o:p> </o:p></p>

<p class=MsoNormal>Thanks,<o:p></o:p></p>

<p class=MsoNormal>Andy<o:p></o:p></p>

</div>

</body>

</html>