It should be noted first and foremost that all of my problems setting up Passenger appear to indeed be my own fault.
So why no follow-up until just now? The thing has been running for around six weeks and I’ve yet to talk about it since that initial setup. Did I give up on it and go back to mongrel?
After mod_rails, mongrel is just not an option. This thing’s setup was a bit confusing due to my own ineptness as a unix admin, and even so, I have had zero problems with Passenger since I set it up. The only maintenance I’ve done was looking at the apache config to see if I needed to tweak any default values (I did, and it was easy).
The reason I haven’t mentioned it so far is simply that I haven’t given it any thought. With mongrel, I was always checking on it to see if an instance had crashed or stopped responding. That just doesn’t happen anymore, even with apps that I literally use less than twice a month. So in this case, the old adage “no news is good news” applies.
The system runs beautifully. The apps I only hit occasionally (yes, I’m such a geek I’ve written apps that are 100% internal to me) only waste memory for a very short time, and then the entire Rails framework is cleaned up! It’s not like mongrel where I have to have a permanent drain on resources to run a single app, and I cannot begin to describe how great that is. Right now I have two apps that I use almost never, and yet I can run them in production mode (for speed) without having to explicitly start and stop a service.
And that strange issue I described last time where the app just didn’t run until I reset permissions? I’m almost certain that was just my stupidity. I have deployed a new app from the ground up (sorry, one of my geeky internal apps, not a new game), and had not a single problem.
With the upcoming release of mod_rails 2.0 and Ruby Enterprise, things are looking even better. The list of enhancements to mod_rails is huge, and even Ruby Enterprise Edition is looking really nice.
My prior bad experiences with Dreamhost were primarily due to their claim that they supported Ruby on Rails, even though said support was iffy at best. According to the release candidate notes for 2.0, Ruby on Rails will no longer be a pipe dream for shared hosts. Just some of the features include: less memory usage, better load balancing, upload buffering, compatibility with even the oldest of Rails apps, and better overall compatibility with apps that don’t play nice.
The system is so nice that, after showing it to an admin at my day job, he used it on a commercial website he was working on and decided he’s not going back — he’s successfully installed and configured Lighty, Apache + FastCGI, and Apache + fcgid, and never liked any of those three solutions.
I only wish this had been around before I ditched Dreamhost :P