Strong opinions, weakly held

Reassure me on Rails

I’m considering using Ruby on Rails for a big, important project. Today I was reading about the deployment options for Rails, and none of them sound all that promising. You can deploy on WEBrick, which is just a Ruby script. That works fine for development or for small internal sites, but isn’t appropriate for larger sites. The second option is to deploy on Apache 1.3 with FastCGI. The third option is to deploy on lighttpd, which at the time Agile Web Development with Rails was written, has “a number of major stability problems.” Obviously there are some big, popular applications written in Rails, but I don’t want to put the system administrator in a position where his pager is going off all night because of the deployment options forced upon us by choosing Rails as our development environment.

Obviously, if Rails continues to grow in popularity, this won’t be an issue. Someone will provide a way to run Rails applications on Apache 2 and lighttpd’s stability problems will be eliminated. In the meantime, though, is it worth making a full commitment to Rails? Chapter 22 of the Rails book has left me a bit shaken.


  1. You missed out SCGI (on Apache or lighttpd) – it’s a lot smaller, simpler and easier to set up than FastCGI. There’s been a lot of activity around it in the Rails community recently.

    I don’t think you should be put off Rails by deployment. As you said, lots of places are deploying it just fine. More importantly, the fact that there are a bunch of deployment options means that if something isn’t working out for you you can switch to something else (without having to change a single line of your application).

  2. Lighttpd’s problems revolved exclusively around file uploads, which have reportedly since been fixed.

    By why would deploying on Apache 1.3.x be a problem? Half the internet or so is running off it.

  3. Here’s some reassurance: since launching blinksale.com (lighttpd/fastcgi) we haven’t had one minute downtime as a result of software problems. Apache works fine too, but I’d recommend lighttpd to anybody.

  4. I strongly urge you to check out Django. It’s tried and tested in a mod_python/Apache 2 arrangement. It’s been used on production sites such as lawrence.com for a couple of years and is very reliable and speedy.

    grono.net, a Polish Friendster-esque site (420,000 users) just moved from Java to Django and had a tremendous increase in both programmer productivity and site performance.

  5. Rails deployment is not a solved problem like PHP, or mod_perl is. You’re going to have to learn about FastCGI in all its crufty glory. (unfortunately it is not like riding a bicycle, but rather like trauma, that you suppress because it was so painful when you first learned)

    Not solved in the sense that it isn’t as brain dead simple as PHP, or as thoroughly understood and documented as mod_perl, but it is possible, with a little help from the mailing list, etc.

    Despite the hype, its still cutting edge tech, for good and for ill.

  6. Knocked my head against the wall trying to get FastCGI running with Apache2 under Windows and gave up. Fell back to WebBrick (toy installation) for now. YMMV.

Leave a Reply

Your email address will not be published.


© 2019 rc3.org

Theme by Anders NorenUp ↑