The situation:

I'm using Varnish in front of some heavy loaded mod-php apache servers. When a cold (empty xcache, cold template cache) apache gets started, the server may overload because of too many requests.

The question:

Is there any way to have something like slow-start from nginx (http://nginx.org/en/docs/http/ngx_http_upstream_module.html#upstream , 'slow_start=time') for varnish ?


Yes & no, when you define a server you have one parameter which is .max_connections you can use it to limit the maximum number of concurrent connections made to the backend, I think it's unlimited if unset.

If you have more than one server in the director you can do a several things:

  • define the new server with less weight (only for the random & hash directors)
  • define the new server with a lower .max_connections, and later switch to a production vcl with a higher .max_connections
  • keep the new server outside the production pool and "prime" its cache with fake/clone requests
  • Probably others that I haven't though...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.