Rails Hosting Comments: Dreamhost

I had an email the other day asking about my experiences with a particular shared hosting company (not dreamhost). I’ve worked my way through a few companies for smaller projects, and thought I’d throw some thoughts out there.

Dreamhost are one of the cheaper hosting outfits around, and seem to inspire either love or hate, depending on your experiences. Their setup for rails is apache+fcgi, which isn’t the optimal configuration, but works well enough for a low-demand application or one where a lot of content can be cached.

Initially, I had a number of problems with which server I was placed on. One was too stretched and my subversion processes were killed before I could even finish checking out my app. Another didn’t handle a combination of subversion and fastcgi properly. And another wasn’t killing off fastcgi processes at the right time, so the app was quickly spiralling out of control. It took quite a while to get all that sorted out, and support responses were often slow, but since I’ve landed on the current server it seems fairly stable.

The one ongoing problem I’ve had is that it can be hard to manually kill processes, and deploying a new version, particularly when switching from development to production, can be a painful process as you wait for the old processes to die and the new ones take their place. That’s not necessarily a huge problem, but does crimp my style when I want to get into an agile, rapid-deployment, continuous integration flow.

Overall, I’d have to say that dreamhost may be good for hobbyist sites, but if you think you’re going to attract significant traffic it’s probably worth paying for a more appropriate environment.

Tags: , , ,

6 comments

  1. I’d like to mention http://TextDrive.com. I’ve been with them for a while now and no problems to report. They have Ruby on Rails, PHP (4 and 5) and subversion hosting included.

  2. As a hosting provider, I’m curious what your “more appropriate environment” or “the optimal configuration” would be like…

  3. Michael — Yeah, textdrive is another I use (in fact, this blog is hosted there) and I’ll be writing up some thoughts on them in the future

    Bernard — I much prefer to have my rails processes sitting behind a setup designed for them. I’m using apache2.2/mod_proxy_balancer/mongrel in one place, apache2/lighttpd in another, and apache2.2/nginx/mongrel in a third.

    I’ve not done extensive benchmarking, but those setups feel more responsive than stock apache/fcgi, and I like that I can cleanly restart the rails processes without bringing down the whole web server, particularly in a shared hosting environment where I don’t have control of the front end server.

  4. Thanks for the input, we are using something simular to what you describle (proxy cluster & lighttpd for RoR). I’m looking forward for your opinion on Textdrive.

  5. You might try a VPS. While it’s a bit more expensive than shared hosting, having control of your environment might bet worth it to you. We have a big contingent of rails developers and setting up a mongrel/rails/apache/capistrano stack is super simple thanks to the deprec gem.

  6. slicematt – Yeah, I have a VPS too for some personal sites, and really like the freedom. I’m just not always sure they’re right for small client sites where I don’t want to be saddled with ongoing server maintenance work.