Another avenue to consider is everything in order on the systems involved? If Rails is chewing up lots of RAM you could be swapping... here's some diagnostics I usually run ( caveat: I'm not a sysadmin, nor do I play one on TV ):

sar -rB 1 0
sar 1 0
sar -n EDEV 1 0 (network IO incl. errors)
sar -d 1 0 ( look for excessive block device IO )?

What sorts of things do other folks on this list look at?

Jacobo Garcia wrote:
mongrel_cluster.yml:

---
port: "21000"
docroot: /var/www/mysite/current/public/
cwd: /var/www/mysite/current
pid_file: /var/www/mysite/tmp/pids/mongrel.pid
log_file: /var/www/mysite/current/log/mongrel.log
environment: production
servers: 14
user: deploys
group: www-data


proxy balancer:
ServerName my.ip.add.ress
NameVirtualHost *:80
<Proxy balancer://mongrel_cluster>
BalancerMember http://bomber:21000 keepalive=on max=1 retry=30
BalancerMember http://bomber:21001 keepalive=on max=1 retry=30
BalancerMember http://bomber:21002 keepalive=on max=1 retry=30
BalancerMember http://bomber:21003 keepalive=on max=1 retry=30
BalancerMember http://bomber:21004 keepalive=on max=1 retry=30
BalancerMember http://bomber:21005 keepalive=on max=1 retry=30
BalancerMember http://bomber:21006 keepalive=on max=1 retry=30
BalancerMember http://bomber:21007 keepalive=on max=1 retry=30
BalancerMember http://bomber:21008 keepalive=on max=1 retry=30
BalancerMember http://bomber:21009 keepalive=on max=1 retry=30
BalancerMember http://bomber:21010 keepalive=on max=1 retry=30
BalancerMember http://bomber:21011 keepalive=on max=1 retry=30
BalancerMember http://bomber:21012 keepalive=on max=1 retry=30
BalancerMember http://bomber:21013 keepalive=on max=1 retry=30
BalancerMember http://bomber:21014 keepalive=on max=1 retry=30
BalancerMember http://bomber:21015 keepalive=on max=1 retry=30
BalancerMember http://bomber:21016 keepalive=on max=1 retry=30
BalancerMember http://bomber:21017 keepalive=on max=1 retry=30
BalancerMember http://bomber:21018 keepalive=on max=1 retry=30
BalancerMember http://bomber:21019 keepalive=on max=1 retry=30
BalancerMember http://bomber:21020 keepalive=on max=1 retry=30
BalancerMember http://bomber:21021 keepalive=on max=1 retry=30
BalancerMember http://bomber:21022 keepalive=on max=1 retry=30
BalancerMember http://bomber:21023 keepalive=on max=1 retry=30
BalancerMember http://bomber:21024 keepalive=on max=1 retry=30
BalancerMember http://bomber:21025 keepalive=on max=1 retry=30
BalancerMember http://bomber:21026 keepalive=on max=1 retry=30
BalancerMember http://bomber:21027 keepalive=on max=1 retry=30
BalancerMember http://bomber:21028 keepalive=on max=1 retry=30
BalancerMember http://bomber:21029 keepalive=on max=1 retry=30
BalancerMember http://kgb:21000 keepalive=on max=1 retry=30
BalancerMember http://kgb:21001 keepalive=on max=1 retry=30
BalancerMember http://kgb:21002 keepalive=on max=1 retry=30
BalancerMember http://kgb:21003 keepalive=on max=1 retry=30
BalancerMember http://kgb:21004 keepalive=on max=1 retry=30
BalancerMember http://kgb:21005 keepalive=on max=1 retry=30
BalancerMember http://kgb:21006 keepalive=on max=1 retry=30
BalancerMember http://kgb:21007 keepalive=on max=1 retry=30
BalancerMember http://kgb:21008 keepalive=on max=1 retry=30
BalancerMember http://kgb:21009 keepalive=on max=1 retry=30
BalancerMember http://kgb:21010 keepalive=on max=1 retry=30
BalancerMember http://kgb:21011 keepalive=on max=1 retry=30
BalancerMember http://kgb:21012 keepalive=on max=1 retry=30
BalancerMember http://kgb:21013 keepalive=on max=1 retry=30
BalancerMember http://kgb:21014 keepalive=on max=1 retry=30
BalancerMember http://kgb:21015 keepalive=on max=1 retry=30
BalancerMember http://kgb:21016 keepalive=on max=1 retry=30
BalancerMember http://kgb:21017 keepalive=on max=1 retry=30
BalancerMember http://kgb:21018 keepalive=on max=1 retry=30
BalancerMember http://kgb:21019 keepalive=on max=1 retry=30
BalancerMember http://kgb:21020 keepalive=on max=1 retry=30
BalancerMember http://kgb:21021 keepalive=on max=1 retry=30
BalancerMember http://kgb:21022 keepalive=on max=1 retry=30
BalancerMember http://kgb:21023 keepalive=on max=1 retry=30
BalancerMember http://kgb:21024 keepalive=on max=1 retry=30
BalancerMember http://kgb:21025 keepalive=on max=1 retry=30
BalancerMember http://kgb:21026 keepalive=on max=1 retry=30
BalancerMember http://kgb:21027 keepalive=on max=1 retry=30
BalancerMember http://kgb:21028 keepalive=on max=1 retry=30
BalancerMember http://kgb:21029 keepalive=on max=1 retry=30
</Proxy>

I've been added the log parameters you've suggested to apache, i'll put em in a future messages.

thanks

Robert Mela wrote:
"Error reading status line" means Mongrel closed the socket without
sending any content back.

IT WOULD BE REALLY HELPFUL IF MONGREL WOULD SEND BACK "503 Server Busy"
WHEN IT'S BUSY.   That way we would know immediately whether the
num_processors limit had been reached or not.   HUGE TIMESAVER FOR
MONGREL USERS!

====

Next...

Seeing your load balancer config, and mongrel_cluster.yml would help
narrow things down & simplify the discussion.

Also, add this to your log file config:

%D ( request duration -)
%{BALANCER_WORKER_NAME}e


Request duration, in combination with start time and
balancer_worker_name, is useful in finding cases where requests to a
back end app server overlap.  These numbers will also allow you to
construct a histogram of concurrent requests each second.

thanks.


begin:vcard
fn:Robert Mela
n:Mela;Robert
email;internet:[EMAIL PROTECTED]
x-mozilla-html:FALSE
version:2.1
end:vcard

_______________________________________________
Mongrel-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/mongrel-users

Reply via email to