Hi folks-
I have frequently heard the complaint that ATS does not do read while write -- 
that, as a reverse proxy, while an object is not yet in cache, it forwards all 
connections to the origin until a version exists in the cache.  The complaint 
is of a thundering herd -- a new popular object becomes available, and the 
origin gets immediately flooded with requests.  Part of this is likely because 
there are 2 relevant configs (if not more) that need to be set in tandem for it 
to work: proxy.config.cache.enable_read_while_writer (which the documentation 
says is set to off by default), and 
proxy.config.http.background_fill_completed_threshold, which is set to 50% (eg, 
50% of the object needs to be downloaded before it can be used to serve other 
requests.

Should we consider both turning on read while write on by default, and reducing 
the background_fill_completed_threshold down to a smaller number (5%? 1%)? What 
are the upsides of the current defaults and downsides of changing them?

miles

Reply via email to