Varnish stuck on most served content

Hettwer, Marian mhettwer at
Thu Mar 31 11:15:06 CEST 2011

Hi Diego,

Please try to avoid top posting.

On 30.03.11 11:10, "Diego Roccia" <diego.roccia at> wrote:

>Hi Traian,
>   Thanks for your interest. The problem is that it's a random issue. I
>noticed it as I'm using some commercial tools (keynote and gomez) to
>monitor website performances and I notice some out of average point in
>the scatter time graph. Experiencing it locally is really hard.

We are using gomez to let them monitor some of our important pages from
What we usually do if we see spikes is, to dig in and find out were the
time is spent.
In your example, if it's gomez, click in and check. Is it first byte time?
DNS time? Content delivery time?

With regards to how to debug that.

I second the question to the list.
My usual procedure in a setup of Apache-->Tomcat-->SomeBackends, I'll go
and dig into the access logs of all components and try to figure out who
is spending the time to deliver.
However, with varnish in front of apaches, I usually don't have a logfile
which tells me "varnish thinks it spend xx ms to deliver this request".
I know that theres varnishncsa, but I dunno whether it logs away the
processing time of a request (%D in Apache LogFormat IIRC).

You might try and really use varnishlog to log away requests to js and css
However, you might grow some really huge files there... Hard to parse them

>> I'm running Centos 5.5 64bit and here's my varnish startup parameters:
>>         -f ${VARNISH_VCL_CONF} \
>>         -T \
>>         -t 604800 \
>>         -u varnish -g varnish \
>>         -s malloc,54G \
>>         -p thread_pool_add_delay=2 \
>>                   -p thread_pools=16 \
>>                   -p thread_pool_min=50 \
>>                   -p thread_pool_max=4000 \
>>         -p listen_depth=4096 \
>>         -p lru_interval=600 \
>>         -hclassic,500009 \
>>         -p log_hashstring=off \
>>         -p shm_workspace=16384 \
>>         -p ping_interval=2 \
>>         -p default_grace=3600 \
>>         -p pipe_timeout=10 \
>>         -p sess_timeout=6 \
>>         -p send_timeout=10"

Hu. What are all those "-p" parameters? Looks like some heavy tweaking to
Perhaps some varnish gurus might shime in, but to me tuning like that
sounds like trouble.
Unless you really know what you did there.

I wouldn't (not without the documentation at hands).


More information about the varnish-misc mailing list