Varnish Storage API

Stephan Richter stephan.richter at gmail.com
Wed Jul 14 16:56:42 CEST 2010


On Wednesday, July 14, 2010, Poul-Henning Kamp wrote:
> The the powers that be, that the author of Varnish said that it is by
> far the least hackish way to get something working reliably.

Believe it or not, your and Artur's comments have helped to convince the 
powers. :-)

While discussing the solution, one engineer brought up the following concern. 
Let's say Varnish gets hammered with user requests and is busy serving them. 
Now comes the driver HTTP client (the one that forces the retrieval of a file 
from the backend). If the system is very busy, the driver HTTP request will 
take a long time to be processed.

The goal is to populate the cache as fast as possible, so that incoming user 
requests will always get the cached data. (This might be a dubious 
requirement, so tell me if it is so. ;-)

Is there a way to give the driver request a higher priority?

I have investigated two possibilities without any luck:

1. Run two Varnish instances against the same workspace/shared memory using 
identical "-n" settings but different frontend ports. This failed with an error 
message telling me I could not do that. The idea here is that one Varnish 
instance is "reserved" for the driver client.

2. Add VCL directives to prefer one request over another. I have read 
carefully through the VCL documentation but could not a way to give a 
particular request precedence over the rest. Does VCL support something like 
this?

Thanks,
Stephan
-- 
Entrepreneur and Software Geek
Google me. "Zope Stephan Richter"




More information about the varnish-dev mailing list