2014-03-19 4 views

Antwort

20

Pass-Modus ist sehr häufig in Lack und sagt nur Varnish die Anfrage an das Backend zu übergeben, anstatt zu versuchen und es aus dem Cache zu dienen. Dies wird für dynamische Seiten verwendet, die nicht zwischengespeichert werden sollen. Beispiel:

sub vcl_recv { 
    if (req.url ~ "^/myprofile") { 
     return (pass) 
    } 
} 

Der Rohrmodus ist ziemlich unterschiedlich und wird nur selten verwendet. Wenn Sie Objekte wie Videos streamen möchten, sollten Sie die Pipe verwenden, um Timeouts zu vermeiden. Die Verwendung von pipe bedeutet, dass Varnish jede Anfrage nicht mehr prüft und nur Bytes direkt zum Backend sendet. Es gibt mehrere Fehler bei der Verwendung von Pipe, also stellen Sie sicher, dass Sie in den Varnish-Dokumenten using pipe auschecken.

Beispiel:

sub vcl_recv { 
    if (req.url ~ "^/video/stream/") { 
     return (pipe) 
    } 
} 

sub vcl_pipe { 
    # http://www.varnish-cache.org/ticket/451 
    # This forces every pipe request to be the first one. 
    set bereq.http.connection = "close"; 
} 
+0

Vielen Dank für diese Erklärung. Hat mir wirklich sehr geholfen. –