I'm having intermittent requests which normally shouldn't take much time at all 
repeatedly taking 189 seconds to complete.  What I don't understand is that I 
can't seem to replicate the issue using Apache Bench.  This is on a server with 
very low load at the moment and simulating heavier traffic than I would 
normally see works fine.  However I'm still getting a bunch of 504 errors.  I 
have HAproxy infront of Passenger(Apache) & Rails, the request leaves the one 
server at time x and the log lines in both the HAproxy log, the Apache2 
access.log, and the app's log itself all show times 3 minutes after x.  Can 
anyone look over my cfg that I've copied below and tell me if there's anything 
out of the norm and/or have any clues as to what might be going on?

##############
Some background info follows:

Passenger 2.2.15
Rails 2.3.4

##############
r...@web02:~# haproxy -v
HA-Proxy version 1.3.15.2 2008/06/21
Copyright 2000-2008 Willy Tarreau <w...@1wt.eu>

##############
r...@web02:~# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.04
DISTRIB_CODENAME=jaunty
DISTRIB_DESCRIPTION="Ubuntu 9.04"

##############
## haproxy.cfg

global
  log 127.0.0.1 local0 warning
  maxconn 1024
 
defaults
  log global
  mode http
  retries 3
  balance roundrobin
  option abortonclose
  option redispatch
  contimeout 4000
  clitimeout 150000
  srvtimeout 30000

# Admin interface for proxy stats
listen admin 0.0.0.0:9100
  stats uri /haproxy

# So monit can check on haproxy
# simple response : 'OK'
listen health_check 0.0.0.0:60001
  mode health

# start haproxy backend services

listen photo_proxy 0.0.0.0:8002
  option httpchk GET /httpchk.txt
    server svc01_7002 svc01:7002 maxconn 20 check
    server svc02_7002 svc02:7002 maxconn 20 check

listen user_proxy 0.0.0.0:8003
  option httpchk GET /httpchk.txt
    server svc01_7003 svc01:7003 maxconn 20 check
    server svc02_7003 svc02:7003 maxconn 20 check  

listen moderation_proxy 0.0.0.0:8004
  option httpchk GET /httpchk.txt
    server svc01_7004 svc01:7004 maxconn 20 check
    server svc02_7004 svc02:7004 maxconn 20 check

listen tiny_url_proxy 0.0.0.0:8005
  option httpchk GET /httpchk.txt
    server svc01_7005 svc01:7005 maxconn 20 check
    server svc02_7005 svc02:7005 maxconn 20 check
  
# end haproxy backend services
# start haproxy web->gatekeeper

listen web_proxy 0.0.0.0:80
  option httpchk GET /httpchk.txt
    server web02_7001 web02:7001 maxconn 20 check
    server web01_7001 web01:7001 maxconn 20 check

# end haproxy web->gatekeeper

##############

Thanks,
Nicholas Hilem
---------------------
Sr. Manager, Server Engineering
Exclaim Mobility, Inc.

3490 Route 1 North, Bldg. 16A, Princeton, NJ 08540
(m) +1 (215) 519-1736
(e) nhi...@exclaim.com
www.pictavision.com | www.snapmylife.com


Reply via email to