Guitar Hero Karaoke Band 2.0 Google Maps says “Take That” to Powerpoint
May 23

Ruby on Rails: To Scale or Not to Scale? Still don’t know!

Ruby, Tech Add comments

I got to go to the Geek Sessions event on scaling Rails tonight.

There were many good people there, and it was nice to put a face to some of the names.

Fortunately, Nick Sieger was writing copious notes, so I will just link to what he blogs from the event.

I only have some meta thoughts:

The format seemed really off. The panel had people from Twitter, Joyent. That makes you think “lots of real world stuff to learn here boys”. Each panel member had five minutes to chat about scaling Rails, and what we got from that was:

  • Measure your app (genius!)
  • RDBMS isn’t the only way
  • Scaling Rails is just like scaling everything else

Fair enough. Nothing earth shattering, but onto the Q & A…. which seemed like it last for 5 minutes and then we were done.

We got to hear some good information about finding bugs via dtrace and such, but when it was done I asked myself: “What do I now know about scaling a Rails app that I didn’t before” and the answer was naught.

I can’t blame the panelists here. The time was short, and all talks about scalability and performance tend to be full with “It depends on your app….”. I would have loved to hear about how Twitter has changed its architecture over the growth (eBay has rewritten theirs 4 times?).

There was a lot of love thrown at JRuby. For a minute there I thought that 1.0 had been released! ;) In all seriousness, it is really interesting to see how much people are looking to JRuby. Very cool indeed.

To reiterate the advice to make your Rails app scale:

  • Patch GC a la Railsbench
  • Rewrite any bottleneck in C
  • Have Rails gen pages and use Apache to serve them
  • Don’t use a RDBMS
  • Sit around watching dtrace
  • Find a P4 1.8Ghz with FreeBSD 3.2
  • Make sure your CRC doesn’t take 20 milliseconds to do a check sum

Or, wait for JRuby 1.0. Or, go even further and check out the upcoming “Ass on Rails” that uses Assembler for that extra bump in performance.

5 Responses to “Ruby on Rails: To Scale or Not to Scale? Still don’t know!”

  1. Jason Carreira Says:

    Dion, you’ve been around a while… Doesn’t this sound like early JVM scaling issues? Rewrite bottlenecks in C?

    Why do we keep re-inventing the wheel? Why is Twitter an example the Rails people would want to bring out? Isn’t scaling Rails their biggest problem, and aren’t they looking to move off of it?

  2. nfisher Says:

    Why FreeBSD 3.2?
    If that’s a joke I don’t get, but what else is new?

  3. Jason A. Hoffman Says:

    Yes, FreeBSD 3.2 is a joke.

    I had said that a few years ago, a single CPU system with FreeBSD 4.9 and 2GB of RAM was a very predictable “horizontal scaling unit” for web and some basic app tiers.

  4. ahohddy Says:

    im just dropping by,nice post!
    Buy Software

  5. replicahandbags Says:

    the titile is a great reminder of the famous phrase “to be or not to be”

Leave a Reply

Spam is a pain, I am sorry to have to do this to you, but can you answer the question below?

Q: What are the first four letters in the word British?