Brandon Werner

Twitter Admits: Ruby On Rails Can’t Scale

Twitter, the service I talked some time ago (and use on my website for fun) is from the same company that releases the podcasting website Odeo. In order to get their AJAX goodness, they use Ruby on Rails. Needless to say, as Twitter has exploded they’ve run in to problems in scalability. But instead of hiding it (the way us Mac users hide that there is, in fact, an OSX BSOD) the lead developer is actually pretty frank:

None of these scaling approaches are as fun and easy as developing for Rails. All the convenience methods and syntactical sugar that makes Rails such a pleasure for coders ends up being absolutely punishing, performance-wise.

EDIT: I apologize for getting the companies mixed up. I knew that Twitter came from an experienced team already use to doing AJAX work, and when I saw the response to the Twitter scaling issue came from David Hannson, of 37 Signals, I got confused.

(Link via Daring Fireball)

16 Responses to “Twitter Admits: Ruby On Rails Can’t Scale”

  1. Ben Says:

    Twitter is not a 37signals (the creators of Basecamp) product.

  2. phitz Says:

    Twitter isn’t from 37signals, and actually DHH already responded to the can’t scale remarks. Actually, even apart from that, it actually scaled pretty well… how many apps have you built that serve a community/user base the siz of twitter’s?

  3. Alex Ezell Says:

    Twitter is not from the same people who run Basecamp. Twitter is run by Obvious and Basecamp by 37 Signals.

  4. charlie Says:

    Its posts like this that get the ruby community up in arms. The article doesn’t say that “rails can’t scale” but that its not as fun to scale as it is to write apps in rails. To dismiss a technology as unable to scale is nearsited and nothing more than fud. We all agree that rails is no race car but you can build large scallable apps with it, and do so fairly easily if you build your app to be scalable from the start instead of waiting till your server start to crawl.

  5. tom Says:

    They don’t say rails can’t scale, they simply say the performance sacrifice is pretty big. Rails can scale to insane heights and can scale just as easily as php, java and .net frameworks.

    scalability != performance …sigh..

    see this article how to actually scale rails:

    http://weblog.rubyonrails.org/2007/2/4/joyent-makes-rails-app-go-to-4-000-req-sec

  6. Bill Says:

    Twitter is not being developed by 37signals, the company behind Basecamp (which includes Rails creator, DHH).

  7. peter Says:

    Sorry, I don’t get that.
    Basecamp is from 37signals
    Twitter is from Obvious.

    AFAIK these are two completely diffent companies.

  8. Ratchetcat Says:

    This is a complete misrepresentation of what the Twitter developer said. So complete, in fact, that one wonders if that was your intent. As many, many people have pointed out — including the Twitter developer — the scaling problem Twitter is facing is related to the database layer, not the application framework.

  9. Josh Charles Says:

    “In order to get their AJAX goodness, they use Ruby on Rails”

    I highly doubt this is correct, and you saying something like this tells me you know very little about Ruby on Rails. It’s not about AJAX, though it integrates with AJAX very well.

  10. Lars Fischer Says:

    Actually, Twitter does scale now. So it can’t be the programming framework. The 37signals apps scale too.

  11. Twitter starting to get de-Railed - Thinking Outloud Says:

  12. RailsNewB Says:

    it is true that performance != to scalability…

    are there many other resources out there regarding scaling with rails yet? From the bottom up? I see that tutorial posted on the rails site, but it is sold out.

  13. Primate Labs Blog : Popular Says:

    [...] a bit of background, the Geekbench Result Browser is a Ruby on Rails application, which has a reputation for not scaling well. While this hasn’t been a problem in the past, it’s been a problem today, since the [...]

  14. twitter Says:

    [...] exactly a poster-child for ruby on rails, is [...]

  15. Ruby on Rails and Twitter « a regular expression Says:

    [...] IM hasn’t worked in at least a week, and searching is spotty at best. There are also multiple articles on the Internet discussing Twitters problems with RoR as its application [...]

  16. Brayn vision » Cum iti alegi limbajul de programare Says:

    [...] nu. Si nu din cauza discutiilor legate de scalabilitatea RoR (vezi si discutiile legate de Tiwitter) sau a problemelor de [...]

Leave a Reply