[Mongrel] load balancers and mongrel

Andrew Arrow andrew at geni.com
Fri Oct 26 20:24:35 EDT 2007


We have a load balancer sending requests to one of X boxes and one of  
N mongrel processes on that box.

Since each mongrel processes is multi-threaded but it has a mutex  
around the section that calls rails, we end up with several requests  
queued up waiting  when they could have gone to another box with a  
free process.

For example, boxA, and boxB.

boxA has mongrels 1 through 10
boxB has mongrels 11 through 20

Load balancer sends a request to boxA mongrel 5.
Load balancer sends a request to boxB mongrel 12.
Load balancer sends a request to boxA mongrel 5 again.
It has to wait for the 1st request still running on boxA mongrel 5.

How can we help the load balancer know it should have sent the  
request to any number of other free mongrels vs. queuing up threads  
that have to wait?

Thanks.




More information about the Mongrel-users mailing list