
varnish-bugs at varnish-cache
Feb 6, 2012, 1:49 AM
Post #1 of 2
(70 views)
Permalink
|
|
#1090: Latency for streaming using byte range requests
|
|
#1090: Latency for streaming using byte range requests --------------------+------------------------------------------------------- Reporter: helmer | Type: enhancement Status: new | Priority: normal Milestone: | Component: varnishd Version: 3.0.2 | Severity: normal Keywords: | --------------------+------------------------------------------------------- This ticket regards the streaming support, the version used is from the streaming branch, 3.0.2-streaming.2 (Dec 8). We have been looking at using the new streaming support in Varnish to accelerate Widevine content. A Widevine player gets content roughly in the following fashion: The player first makes a regular http GET for the file, reads the first (approx) 100k bytes, closes the connection and then makes a new http request, specifying a byte range starting somewhere in the file and with an open ending. To mimic this we tried: {{{ > curl -o /dev/null -s -m 1 http://test_server/blob.wvm }}} where the media file blob.wvm is about 650 MB (the complete file won't be transferred to Varnish within the 1 second limit used by curl, -m 1), and then: {{{ > curl -o /dev/null -s -H 'Range: bytes=1234567-' http://test_server/blob.wvm }}} This results in two GET to the origin server for the complete file. Since Varnish asks the origin for the complete file, users will experience a (sometimes considerable) latency when the file is not in cache. For this use case support for byte range requests to the origin would be of great value (to our understanding not implemented, suggested enhancement). Information about our environment: CentoS 5.5, we compiled the source "plain vanilla" with gcc 4.1.2. The default.vcl was used with streaming enabled: {{{ sub vcl_fetch { set beresp.do_stream = true; } }}} We started varnishd with {{{ /usr/local/sbin/varnishd -f /usr/local/etc/varnish/default.vcl -s malloc,256M -s persistent,/var/varnish/varnish.cache,2048M -p default_ttl=7200 -T 127.0.0.1:2000 -a 0.0.0.0:8080 }}} I added Martin as cc, since he has been working on this. -- Ticket URL: <https://www.varnish-cache.org/trac/ticket/1090> Varnish <https://varnish-cache.org/> The Varnish HTTP Accelerator _______________________________________________ varnish-bugs mailing list varnish-bugs [at] varnish-cache https://www.varnish-cache.org/lists/mailman/listinfo/varnish-bugs
|