Daya Sharma
2006-Aug-23 19:00 UTC
[Rails] 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 -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk -~----------~----~----~----~------~----~------~--~---
Ezra Zygmuntowicz
2006-Aug-23 22:34 UTC
[Rails] Re: Load testing Rails on Mongrel-Lighttpd - configuration q''s
On Aug 23, 2006, at 12:00 PM, Daya Sharma wrote:> > 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 >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 --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk -~----------~----~----~----~------~----~------~--~---