Hi Chris, The optimal solution depends on the resources you have available to you. Assuming you would like to accomplish your objectives "on a shoestring" I would recommend looking into, as Ezra suggested, HAProxy (HAProxy does not support SSL). HAProxy knows how to be smart about what's going on in the backend. I have configured HAProxy in front of nginx web/application servers with mongrels. If the requested server is not available, the request is handled by an available server.
HAProxy->(nginx/mongrels)->db [ load balancer->app servers->db servers ] To add to Ezra's suggestion, please keep in mind that HAProxy does not support SSL. I use Pound to handle SSL requests, routing them to the appropriate web/application servers. Add to that virtualization and you have a scalable solution on a shoestring ;) PS: Thanks Zed for your excellent work on mongrel. Best, Rod On 1/25/07, Ezra Zygmuntowicz <[EMAIL PROTECTED]> wrote: > > On Jan 25, 2007, at 10:24 PM, snacktime wrote: > > > I'm looking for the most reliable setup for Mongrel. Reliable meaning > > avoiding things like sending too many requests to a single mongrel > > process, or sending requests to a mongrel process that has hung for > > some reason. The handler will most likely be rails, but it might be a > > custom handler. SSL is also a requirement, which limits the options a > > bit but it can't be done away with. > > > > I spent some time looking at using the proxy balancer in apache, and > > it appears that the balancer can pile up requests on mongrel because > > there is no way to tell apache to not send more than one request at a > > time to any single balance member. I'm also not sure how well things > > are handled if a mongrel process hangs in some way. Not that it would > > of course:) > > > > Suggestions? > > > > Chris > > > Chris- > > Haproxy is a software proxy that can do the right thing and not > overload mongrels. But it is not a webserver. I have used it behind > nginx. So nginx or apache proxy to one haproxy and then haproxy does > the load balancing in a more inteligent way then apapche ro nginx can > do right now. > > But Igor the author of nginx said that he will be adding a max-load > to the ngixn proxy module which you could set to one and then ngxin > would queue requests instead of mongrel and only send requests to > mongrels that are not busy. This will be the best option with the > least moving parts once he adds this feature. > > Cheers- > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- [EMAIL PROTECTED] > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > _______________________________________________ Mongrel-users mailing list Mongrel-users@rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users