Mailing List Archive

Varnish 5.x - Streaming + range request
Just want to understand the behavior of varnish if range request while
streaming of entire object in progress. lets say client1 fetches complete
object of size of 300 bytes (do_stream == true) and client 2 is trying to
fetch range request 100-200 bytes at the same time. the hash functions will
match because we are using the same url+host for hashing. .How the clients
will be served?. Will wait for entire object to streamed or make it miss
and fetch from origin ?. Would expect to deliver the object from origin
instead of wait whole object may take time.

Thanks,
Prem
Re: Varnish 5.x - Streaming + range request [ In reply to ]
On Mon, Feb 5, 2018 at 8:29 AM, Prem Kumar <n.premkumar.me@gmail.com> wrote:
> Just want to understand the behavior of varnish if range request while
> streaming of entire object in progress. lets say client1 fetches complete
> object of size of 300 bytes (do_stream == true) and client 2 is trying to
> fetch range request 100-200 bytes at the same time. the hash functions will
> match because we are using the same url+host for hashing. .How the clients
> will be served?. Will wait for entire object to streamed or make it miss
> and fetch from origin ?. Would expect to deliver the object from origin
> instead of wait whole object may take time.

Varnish will only make range requests for pass transactions (unless
you force it in VCL) so in the case of a miss, either a complete fetch
is done or the client transactions attaches itself to an ongoing
fetch, and on the delivery side a partial response is delivered (I
think, as soon as the requested range is available in storage).

Dridi
_______________________________________________
varnish-misc mailing list
varnish-misc@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc