Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm using Phusion Passenger + nginx to deploy a rails app. So far, all is working fantastically.

However, I'm a little fuzzy around the architecture of passenger + nginx, and I would love to deepen my understanding.

Can anyone provide a good overview of how the architecture works, why it works so well and what the pros and cons of the solution are?

Write yourself or link me up, not bothered either way - and yes, I did Google it and I did check the passenger documentation. Either I'm bad at finding things or it is easily discoverable.

share|improve this question

the reason why mod_rails/passenger works so well over e.g. mongrels is that it gets loaded by the webserver (nginx or apache) as module and runs directly in the process-space of it.

in the old mongrel days, the webserver just redirected the requests to the mongrels cluster (separate application array) listening on a port on localhost. it was pretty much a socket based communication between 2 independent applications which is no longer the case with mod_rails...

mongrels caused a lot of trouble and it's a shame, that they still can be found out in the field.

share|improve this answer
Thankyou for your answer. This gives me a little of the information I'm looking for, but I'd like something more comprehensive. – michaelward82 Oct 28 '11 at 16:24

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.