intermittent 503's
Boris Guéry
guery.b at gmail.com
Wed Apr 16 22:36:28 CEST 2014
Le 16/04/2014 22:12, Jennings, Raymond a écrit :
> I can't say with any definitive response but I have seen cases
> where Varnish times out before Apache finishes the response. I see
> this when there is a request that causes a heavy database
> transaction on the backend. Does looking at your backend servers
> provide any more details?
>
Well I don't think it is some sort of timeout, the `backend write
error: 104 (Connection reset by peer)` error is straight forward.
Still, that's probably on the backend side. Try to check your apache
log and processes through `mod_status` to make sure you're not running
out of processes/threads, whatever you use.
>
> On Wed, Apr 16, 2014 at 8:37 AM, L Cruzero <lcruzero at gmail.com
> <mailto:lcruzero at gmail.com>> wrote:
>
> Hi, in our varnish setup(varnish-3.0.3-1.el5) using a
> loadbalanced really Healthy VIP as the only backend, we seem to be
> getting intermittent 503's
>
>
> stdout captured with varnishlog -c -m TxStatus:503
>
> 35 ReqStart c 10.33.13.254 24582 1166630723 35 RxRequest c
> POST 35 RxURL c
> /index.php?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&method=form&cid=20&6bc427c8a7981f4fe1f5ac65c1246b5f=cf6dd3cf1923c950586d0dd595c8e20b
>
>
35 RxProtocol c HTTP/1.1
> 35 RxHeader c User-Agent: BOT/0.1 (BOT for JCE) 35 RxHeader
> c Content-Type: multipart/form-data;
> boundary=---------------------------41184676334 35 RxHeader c
> Content-Length: 5000 35 RxHeader c True-Client-IP:
> 202.80.119.178 35 RxHeader c X-Akamai-CONFIG-LOG-DETAIL: true
> 35 RxHeader c TE: chunked;q=1.0 35 RxHeader c Connection:
> TE 35 RxHeader c Akamai-Origin-Hop: 2 35 RxHeader c Via:
> 1.1 v1-akamaitech.net <http://v1-akamaitech.net>(ghost)
> (AkamaiGHost), 1.1 akamai.net <http://akamai.net>(ghost)
> (AkamaiGHost) 35 RxHeader c X-Forwarded-For: 202.80.119.178,
> 114.4.39.206 35 RxHeader c Host: www.somedomain.com
> <http://www.oregonlive.com> 35 RxHeader c Cache-Control:
> max-age=120 35 RxHeader c Connection: keep-alive 35 RxHeader
> c X-Forwarded-For: 23.73.180.223 35 RxHeader c Accept-Encoding:
> identity 35 VCL_call c recv pass 35 VCL_call c hash 35 Hash
> c
> /index.php?option=com_jce&task=plugin&plugin=imgmanager&file=imgmanager&method=form&cid=20&6bc427c8a7981f4fe1f5ac65c1246b5f=cf6dd3cf1923c950586d0dd595c8e20b
>
>
35 Hash c www.somedomain.com <http://www.oregonlive.com>
> 35 VCL_return c hash 35 VCL_call c pass pass 35 Backend
> c 29 www_prod www_prod 35 FetchError c backend write error: 104
> (Connection reset by peer) 35 Backend c 42 www_prod www_prod
> 35 FetchError c backend write error: 104 (Connection reset by
> peer) 35 VCL_call c error deliver 35 VCL_call c deliver
> deliver 35 TxProtocol c HTTP/1.1 35 TxStatus c 503 35
> TxResponse c Service Unavailable 35 TxHeader c Server:
> Varnish 35 TxHeader c Content-Type: text/html; charset=utf-8 35
> TxHeader c Retry-After: 5 35 TxHeader c Content-Length:
> 419 35 TxHeader c Accept-Ranges: bytes 35 TxHeader c Date:
> Tue, 15 Apr 2014 19:31:22 GMT 35 TxHeader c X-Varnish:
> 1166630723 35 TxHeader c Age: 0 35 TxHeader c Via: 1.1
> varnish 35 TxHeader c Connection: close 35 Length c 419
> 35 ReqEnd c 1166630723 1397590282.467632055
> 1397590282.899372101 0.033779144 0.431685925 0
> <tel:431685925%200>.0000541
>
>
> here is super simple pass thru NO cache config :
>
>
> backend www_prod { .host = "cs-****.*****.*****.net"; .port =
> "80"; .probe = { .url = "/"; .timeout = 5s; .interval = 1s; .window
> = 5; .threshold = 2; } }
>
> sub vcl_recv { if (req.http.X-ADI-MISS) { # Force a cache miss set
> req.hash_always_miss = true; }
>
> if (req.url == "/varnish-health/" || req.url ~ "^/stack-check*") {
> error 200 "Varnish is responding"; set req.http.Connection =
> "close"; }
>
>
> if (req.http.host ~ "^(origin|www)") { set req.http.host =
> regsub(req.http.host, "^origin\.", "www."); set req.backend =
> www_prod; return(pass);
>
> }
>
>
> ## we tried with and w/o these conditions intermittent 503's
> persisted
>
> # if (req.backend.healthy) { # set req.grace = 30s; #
> } else { # set req.grace = 24h; # }
>
> }
>
>
> sub vcl_fetch { # set beresp.do_esi = true; set
> beresp.ttl = 1m;
>
> # set beresp.grace = 24h; }
>
>
>
> Any helpful thoughts and or possible leads on this will be much
> appreciated.
>
>
> kind regards,
>
>
> -LC
>
>
> _______________________________________________ varnish-misc
> mailing list varnish-misc at varnish-cache.org
> <mailto:varnish-misc at varnish-cache.org>
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
>
>
>
> _______________________________________________ varnish-misc
> mailing list varnish-misc at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
--
Boris Guéry
mobile: +33 6 86 83 03 12
skype: borisguery
pgp: 0x034C6265
More information about the varnish-misc
mailing list