varnish bottleneck?

ll ibeginhere at gmail.com
Mon Nov 30 03:51:03 CET 2009


I have some problem when I understand the pipe and pass.
In the official website ,
In pipe mode, the request is passed on to the backend, and any further 
data from either client or backend is passed on unaltered until either 
end closes the connection.
In pass mode, the request is passed on to the backend, and the backend’s 
response is passed on to the client, but is not entered into the cache. 
Subsequent requests submitted over the same client connection are 
handled normally.

so if in the pipe mode , one of request is "POST",and i set the if POST 
the pipe. in this situation , I can control only the POST request go to 
pipe mode.may be some GET request will be pipe also if the GET request 
after the POST. right ? because the pipe mode end by either backend or 
client closes the connection . and I don't know when the connect will 
close . can I understand like that ? Is it rights ?
and if I set PASS,even though the GET request after the POST, it will be 
handle by normally (maybe lookup or other settings I had set for GET)
Is it right ?

于 2009-11-27 17:25, Tollef Fog Heen 写道:
> ]] ll 
>
> | if (req.http.host ~"www.abc.cn"){
> | lookup;
> | }
> | it's well. Varnish can cache everything .but some function of the
> | website is unable .eg POST. So I put the POST judge before the HOST
> | .like that :
> | if (req.request == "POST"){
> | pipe;
> | }
> | if (req.http.host ~"www.abc.cn"){
> | lookup;
> | }
> | there are some problem .many of url's record can't be find in the
> | varnishlog .and there are no marked by the varnish eg "X-Cache: MISS" in
> | the Response Headers .
>
> Yes, this is how pipe works.  You might want to read up on pass vs pipe.
>
>   




More information about the varnish-misc mailing list