views:

265

answers:

6

Mongrel, Thin, Webrick, Passenger... Wich one is the most effective solution to put a RoR application in a production environment? Which one is the most flexible, and easier to install and setup under Windows for development environment?

A: 

For straight Ruby on Rails try Apache + Passanger

Josh Moore
A: 

Mongrel and Passenger are the most used for production envs

Maximiliano Guzman
+12  A: 

The easiest to set up for production will probably be Apache and mod_rails (passenger). If you want to be using the new hotness, you could give nginx and passenger a whirl.

For development mongrel is usually the easiest to work with. Most Windows IDE's (RadRails, Netbeans) give you the choice to use Webrick or Mongrel for development work and let you control the servers from the IDE itself.

MattC
I agree, Passenger makes it ridiculously easy to setup and troubleshoot.
Josiah I.
+1  A: 

I prefer Passenger/Apache myself, and I've had good luck with it. I believe Heroku uses Thin, so I might suggest looking at that as opposed to Mongrel. This page has some good info on Rails deployment in generel: http://rubyonrails.org/deploy

trevorturk
+4  A: 

My preference is nginx + Thin.

I've been using Thin in production for more than a year and it has been very stable.

I recommend that you try different scenarios for your application and benchmark them in development using Apache Bench (ab) or httperf.

There is a section the Deploying Rails Applications book where they show how you can do that.

luccastera
+1  A: 

Passenger is by a mile the easiest to setup. I have two production applications running Passenger and have never needed to touch either of them. They both used to run apache/mongrel which by comparison was a real pest, especially with regard to getting the load balancing right.