Load testing Rails on Mongrel-Lighttpd - configuration q's

Hi All

Please help me understand load balancing in lighty-mongrel setup.

I am running a mongrel cluster for 8 nodes load balanced by lighty. The
load balancing algorithm chosen is ‘fair’.

proxy.balance = “fair”

I am starting my mongrel instances using the following command line
(different port number)

mongrel_rails start -c C:/myspace/snapshot -p 4111 -t 70 -e production
-P log/mongrel-1.pid

What I am trying to understand is

  1. The -t 70 option for mongrel is a timeout option, but is it
    milli-seconds, micro-seconds?

  2. The -t option ‘http://mongrel.rubyforge.org/docs/howto.html’ means
    the server is pausing between accepting clients. So whie the server is
    paused, does Lighttpd know about it and does it then send the request to
    next node in cluster?

  3. In my command line there is no -n option so the default 1024
    concurrent processing threads will be active. My question is, if I lower
    the value to say 100, does it mean Lighttpd switches between each node
    at a higher rate (assuming very heavy loads)??

  4. proxy.balance=“hash” means same request URI is sent to always the
    same host. But in a typical load testing environment, where the load is
    simulate from one machine, all requests will have the same requestURI.
    This means that all requets in a load test will end up going to one
    Mongrel node. Naturally this is not load balancing. Can someone please
    tell me how I can properly distribute load without resorting to
    proxy.balance=“fair” option.

Thanks in advance

-daya

On Aug 23, 2006, at 12:00 PM, Daya S. wrote:

at a higher rate (assuming very heavy loads)??
Thanks in advance

-daya

Hey Daya-

THe proxy module in lighttpd 1.4.11 is not production worhty. It has

a flaw where if a backend goes down and then gets restarted, lighty
will not re-enable it without a full restart. So I reccomend that
until lighty 1.5 is out that you do not use lighttpd as the front
proxy for your mongrel cluster. Apache2.2/mod_proxy_balancer is a
popular choice. As well as Pound for proxy/load balancing. But I have
a new favorite that is working very well. Much better then any of
these other options. I just wrote an article about it you can see here:

http://brainspl.at/articles/2006/08/23/nginx-my-new-favorite-front-
end-for-mongrel-cluster

Cheers-
-Ezra

Ezra Z. wrote:

On Aug 23, 2006, at 12:00 PM, Daya S. wrote:

at a higher rate (assuming very heavy loads)??
Thanks in advance

-daya

Hey Daya-

THe proxy module in lighttpd 1.4.11 is not production worhty. It has
a flaw where if a backend goes down and then gets restarted, lighty
will not re-enable it without a full restart. So I reccomend that
until lighty 1.5 is out that you do not use lighttpd as the front
proxy for your mongrel cluster. Apache2.2/mod_proxy_balancer is a
popular choice. As well as Pound for proxy/load balancing. But I have
a new favorite that is working very well. Much better then any of
these other options. I just wrote an article about it you can see here:

http://brainspl.at/articles/2006/08/23/nginx-my-new-favorite-front-
end-for-mongrel-cluster

Cheers-
-Ezra

Thanks Exra … I will try the EngineX you mentioned … alas there is
no win32 port as yet and at my work place I don’t have access to *nx
machines.

-daya