Poul-Henning Kamp phk at
Fri Apr 20 17:06:36 CEST 2007

In message <BFD886D9-900A-4999-9448-9CF4FA0F549F at>, Denis Ahrens writes

>Every time I restart varnishd it needs to grab every object again from
>the backend. Is this intentional because varnishd does not like to
>save the objects to the disk?
>I know that varnish should not be restarted, but it happens and then
>a nice built up cache is empty and needs to fill up again.

Well, it's complex tradeoff situation:

If your backend is truly terribly, then obviously persistent storage
is a good thing.

But if your active content is shortlived, then persisitence won't buy
you anything because by the time you get back up, it's all expired.

Then again, you don't want to hit any backend that hard if you recover
from a powerfailure and several varnish[1] come up at the same time.

On the other hand, it's not much more fun, if all your varnish machines
spends ages revalidating their pesistent storage when they start

and on and on it goes.

The Varnish solution is that the storage module is pluggable.  We
currently have two, one for debugging and the one we all know that
does non-persistent VM storage.

If persistent storage is required, it can be written and plugged
in, with all the advantages and disadvantages that it has.

All that's missing is analysis and code.


[1] What's the proper plural of "varnish" ?  Varnishes ?  Varnishen ?
Varnisker ?  Varnixen ?

Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

More information about the varnish-dev mailing list