You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@trafficserver.apache.org by John Shen <se...@gmail.com> on 2014/05/27 10:03:49 UTC

Read While Writer does not seem to always work

Hi guys,

I am testing ATS 4.2.1 as a reverse proxy cache. There are thousands of
client connections and some of the clients are requesting the same objects.
I expect there shall be only one request to the origin server for one of
the objects (typically 300KB in size). For example, there are 60 clients
requesting the same object in a short period, thus expecting to have only
one request in the origin server access log for this object.

Yes for some objects, there is only one record in the origin server (IIS)
log as expected. But for other objects, there could be 10 or more GET in
the IIS access log.

I have enabled the Read While Writer option followed the guide:

CONFIG proxy.config.cache.enable_read_while_writer INT 1
CONFIG proxy.config.http.background_fill_active_timeout INT 0
CONFIG proxy.config.http.background_fill_completed_threshold FLOAT 0.000000
CONFIG proxy.config.cache.max_doc_size INT 0

And also set the Open Read Retry Timeout:

CONFIG proxy.config.http.cache.max_open_read_retries INT 10
CONFIG proxy.config.http.cache.open_read_retry_time INT 10

I have tried the proxy.config.http.cache.max_open_read_retries as -1 or
100, but the results are the same.
Tried ATS 3.2.5, also the same results.

Any configuration am I missing? Is it possible to force ATS to retrieve an
object from origin server for only once for a cache-miss object?

Thanks,
John