contents

Scaling Rails

Introduction

Episode #1 - Page Responsiveness

Episode #2 - Page Caching

Episode #3 - Cache Expiration

Episode #4 - New Relic RPM

Episode #5 - Advanced Page Caching

Episode #6 - Action Caching

Episode #7 - Fragment Caching

Episode #8 - Memcached

Episode #9 - Taylor Weibley & Databases

Episode #10 - Client-side Caching

Episode #11 - Advanced HTTP Caching

Episode #12 - Jesse Newland & Deployment

Episode #13 - Jim Gochee & Advanced RPM

Episode #14 - Rack & Metal

Episode #15 - Load Testing - Part 1

Episode #16 - Load Testing - Part 2

Episode #17 - Scaling Your Database - Part 1

Episode #18 - Scaling Your Database - Part 2

Episode #19 - On The Edge - Part 1

Episode #20 - On The Edge - Part 2

Episode #21 - On The Edge - Part 3

Master's Interviews

Mark Imbriaco, 37signals

Ward Cunningham, AboutUs.org

Lior Shiff, Product Madness - pt. 2

Lior Shiff, Product Madness - pt. 1

Jesse Proudman, Blue Box Group - pt. 2

Jesse Proudman, Blue Box Group - pt. 1

Adam Wiggins and Ryan Tomayko, Heroku - pt. 1

Adam Wiggins and Ryan Tomayko, Heroku - pt. 2

Adam Wiggins and Ryan Tomayko, Heroku - pt. 3

Thorsten von Eicken, RightScale

Developing for Performance

Yehuda Katz & Justin George Talk Rails 3

Webinar Replay: Optimizing Your Online Store for the Holidays

Webinar Replay: Using Apdex to Improve Online Customer Satisfaction

Application Server Provisioning and Tuning

How Performance Feedback can Reduce Testing in Agile Development

RAILS_ENV=local_production

Rails Teamwork

Ward Cunningham, AboutUs.org

Scalable Teams, Part 2: Leadership

Scalable Teams, Part 1: Communication

Benchmarking Reports

State of the Stack: A Ruby on Rails Benchmarking Report - 05 October 2010

State of the Stack: A Ruby on Rails Benchmarking Report - 25 May 2010

State of the Stack: A Ruby on Rails Benchmarking Report - 7 January 2010

The State of the Stack: A Ruby on Rails Benchmarking Report - 10 June 2009

The State of the Stack: A Ruby on Rails Benchmarking Report - 2 April 2009

« Back to RailsLab

The State of the Stack: A Ruby on Rails Benchmarking Report - 2 April 2009

As of April 2, 2009

New Relic helps more than 1500 organizations manage their Ruby on Rails applications. This gives us unique insight into how thousands of applications are deployed. Many of our customers have opted in to have their performance data shared with the Rails Core Team to aid in their ongoing work on the platform. In addition to that data we also aggregate information on the versions of OS, Ruby, and Rails used and the various plugins deployed.

We thought it would be useful to the community to see what is currently being used by others developing Rails apps. We list only the most commonly used versions and plugins because a complete list is too long to post here and is probably not all that useful. This report does not cover Gems, which will be included in a future report.

Ruby
(% of RPM Users)

Ruby Versions

Version Apps Using
(%)
  1.8.6 (x86_64-linux) 36.1
  1.8.6 (i686-linux) 14.6
  1.8.6 (universal-darwin9.0) 6.6
  1.8.6 (i486-linux) 5.9
  1.8.7 (x86_64-linux) 4.8
  1.8.7 (i486-linux) 3.7
  1.8.5 (x86_64-linux) 3.5
  1.8.5 (i386-linux) 2.9
  1.8.7 (i686-linux) 2.8
  1.8.6 (i386-mswin32) 2.5
  1.8.6 (i386-linux) 2.3
  1.8.7 (i686-darwin9) 2.0
  1.8.5 (i486-linux) 1.9
  1.8.6 (i386-solaris2) 0.7
  1.8.5 (i686-linux) 0.7
  1.8.6 (java) 0.7
  1.8.7 (i686-darwin9.4.0) 0.6
  1.8.7 (i386-solaris2) 0.6
  All others combined 6.8

 

Rails
(% of RPM Users)

Rails Versions

 

Plugins
(% of RPM Users)

Plugins

How to read the Plugin data: Of all New Relic customers deployed into production, X% have this plugin installed in an application. This does not represent market share or total adoption within the Rails community. It represents the percent of New Relic customers who have the plugin deployed.

Comments?

We would like to get your feedback on this report. Is it useful? What do you find interesting in the data? Use the Feedback button below. Thanks.

The State of the Stack: A Ruby on Rails Benchmarking Report - 10 June 2009

As of June 10, 2009

New Relic helps more than 1,800 organizations manage their Ruby on Rails applications in production. This gives us unique insight into how thousands of applications are deployed. Many of our customers have opted in to have their performance data shared with the Rails Core Team to aid in the team’s ongoing work on the platform. In addition to that data New Relic also aggregates information on the versions of OS, Ruby, and Rails used and the various plugins deployed.

We first published this data in April, 2009. Though it’s only been two months, there have been some changes in the stack stats since then. For example, deployment of Ruby 1.8.6 (i686-linux) has increased five-fold and the same version on universal-darwin doubled. Adoption of the latest Rails versions is pretty rapid as we see Rails 2.3.2 increasing from only 4.4% of our customers to nearly 30%. The most commonly used plugins list is essentially the same though there are some movements in the order of adoption.

We list only the most commonly used versions and plugins because a complete list is too long to post here and is probably not all that useful. This report does not cover Gems, which will be included in a future report.

Ruby
(% of RPM Users)

Version Apps Using
(%)
  1.8.6 (x86_64-linux) 25.66
  1.8.6 (universal-darwin9.0) 12.60
  1.8.6 (i686-linux) 11.91
  1.8.6 (i486-linux) 6.00
  1.8.7 (i486-linux) 5.31
  1.8.7 (x86_64-linux) 5.08
  1.8.6 (i386-mswin32) 3.55
  1.8.5 (i386-linux) 3.05
  1.8.7 (i686-darwin9) 3.00
  1.8.7 (i686-linux) 2.86
  1.8.5 (x86_64-linux) 2.68
  1.8.6 (i386-linux) 1.98
  1.8.6 (i686-darwin9.6.0) 1.34
  1.8.5 (i486-linux) 1.34
  1.8.6 (java) 0.92
  1.8.7 (i686-darwin9.6.0) 0.88
  1.8.7 (i386-solaris2) 0.74
  1.8.6 (i386-solaris2) 0.69
  1.8.6 (i686-darwin8.11.1) 0.51
  All Others 10.00

 

Rails
(% of RPM Users)

Rails Versions

 

Plugins
(% of RPM Users)

Plugins

How to read the Plugin data: Of all New Relic customers deployed into production, X% have this plugin installed in an application. This does not represent market share or total adoption within the Rails community. It represents the percent of New Relic customers who have the plugin deployed.

Comments?

We would like to get your feedback on this report. Is it useful? What do you find interesting in the data? Use the Feedback button below. Thanks.

State of the Stack: A Ruby on Rails Benchmarking Report - 7 January 2010

As of 31 December 2009

Because New Relic RPM is used by more than 3,000 organizations to manage their Ruby on Rails and Java applications in production, we have unique insight into how thousands of applications are deployed.

Since April, 2009, we have periodically published a summary of the most commonly used versions of Ruby, Rails and the various plugins deployed for Ruby applications. This report enables you to compare your own deployed application stack with those used by other development teams. Are you behind the curve in Ruby? Are there some plugins that your team may want to consider? This is a good place to start that conversation. Later this year we will publish benchmarks of the Java stacks our customers use.

Many of our customers have opted in to have their performance data shared with the Rails Core Team to aid in the team’s ongoing work on the platform. In addition to that data New Relic also aggregates information on the versions of OS, Ruby, and Rails used and the various plugins deployed.

In this report we list only the most commonly used Ruby and Rails versions and only the most commonly used plugins because a complete list is too long to post here and is probably not all that useful. This report does not cover Gems.

And without further ado…

Most Commonly Deployed Ruby Versions
(% of RPM Users)

Ruby 1.8.6 remains the most widely deployed version. That said, 1.8.7 has seen a marked increase in usage since our last report in June, going from 5% to 30% in just a few months.

Most Commonly Deployed Rails Versions
(% of RPM Users)

Rails Versions

 

2.3.2 remains widely deployed as we reported in June, though most of our customers are now using 2.3.4, which was released in early September 2009. A significant percentage are also using 2.3.5, released at the end of November.

Most Commonly Used Plugins
(% of RPM Users)

Plugins

While the top five plugins remain unchanged since June, hoptoad_notifiier has replaced exception_notification as the most common plugin, with over 50% of our user base having deployed it.

How to read the Plugin data: Of all New Relic customers deployed into production, X% have this plugin installed in an application. This does not represent market share or total adoption within the Rails community. It represents the percent of New Relic customers who have the plugin deployed.

UPDATE: We are now capturing the Gems deployed by our customers as well. Here is a list of the top 50 Gems in use (from a list of more than 2000.)

mislav-will_paginate
haml
authlogic
RedCloth
fastercsv
will_paginate
hpricot
aws-s3
json
chronic
geokit
nokogiri
thoughtbot-paperclip
rubyist-aasm
paperclip
calendar_date_select
mime-types
right_aws
searchlogic
javan-whenever
prawn
oauth
formtastic
daemons
thoughtbot-factory_girl
activemerchant
httparty
rmagick
rack
twitter
mysql
ruby-openid
faker
uuidtools
memcache-client
htmlentities
money
thoughtbot-shoulda
friendly_id
whenever
rubyzip
chriseppstein-compass
libxml-ruby
rspec
thinking-sphinx
rspec-rails
mocha
justinfrench-formtastic
sanitize
builder

Comments?

We would like to get your feedback on this report. Is it useful? What do you find interesting in the data? Use the Feedback button below. Thanks.

State of the Stack: A Ruby on Rails Benchmarking Report - 25 May 2010

As of 24 May 2010

Because New Relic RPM is used by more than 4,000 organizations to manage their Ruby on Rails and Java applications in production, we have unique insight into how thousands of applications are deployed.

Since April, 2009, we have periodically published a summary of the most commonly used versions of Ruby, Rails and the various plugins and gems deployed for Ruby applications. This report enables you to compare your own deployed application stack with those used by other development teams. Are you behind the curve in Ruby? Are there some plugins or gems that your team may want to consider? Have you developed a gem and wonder how many apps use it in production? This is a good place to start that conversation.

Later this year we will publish benchmarks of the Java stacks our customers use.

Many of our customers have opted in to have their performance data shared with the Rails Core Team to aid in the team’s ongoing work on the platform. In addition to that data New Relic also aggregates information on the versions of OS, Ruby, and Rails used and the various plugins deployed.

In this report we list only the most commonly used Ruby and Rails versions and only the most commonly used plugins and gems because a complete list is too long to post here and is probably not all that useful.

The research is done by identifying the versions of deployed application stack components on more than 5,000 hosts monitored by New Relic. This report does not measure market share of any software. It is intended to provide Ruby on Rails developers with a means to compare their own deployment choices against the larger population of deployed production RoR apps.

Most Commonly Deployed Ruby Versions
(% of RPM Users)

Ruby 1.8.6 remains the most commonly used version, declining a bit from our last report in January. Version 1.8.7 continues to increase in popularity.

 

Most Commonly Deployed Rails Versions
(% of RPM Users)

Rails Versions

 

With a surge, Rails 2.3.5 has become the most commonly used version growing from only 13% of deployments in January to 48% today. As expected all other versions have declined in use. It’s interesting to see that Rails 3.0 Betas 1, 2, and 3 are used on nearly 2% of hosts. Watch this number grow dramatically in the months ahead.

Most Commonly Used Gems
(% of RPM Users)

This is the list of the top 50 gems deployed. If a gem you are interested in is not listed, tweet @newrelic with the gem name and we can tweet the percent of use across our customer base. How to read our Gems chart: The number following the name of each gem represents the percent of hosts having this gem deployed.

Plugins

Most Commonly Used Plugins
(% of RPM Users)

This is the list of the top 50 plugins deployed. If a plugin you are interested in is not listed, tweet @newrelic with the plugin name and we can tweet the percent of use across our customer base. How to read our plugin chart: The number following the name of each plugin represents the percent of hosts having this plugin deployed.

Plugins

Comments?

We would like to get your feedback on this report. Is it useful? What do you find interesting in the data? Use the Feedback button below. Thanks.

State of the Stack: A Ruby on Rails Benchmarking Report - 05 October 2010

As of 01 October 2010

Welcome to the latest Ruby on Rails State of the Stack report. Because New Relic RPM is used by more than 5,500 organizations to manage their Ruby on Rails and Java applications in production, we have unique insight into how thousands of applications are deployed.

Since April, 2009, we have periodically published a summary of the most commonly used versions of Ruby, Rails and the various plugins and gems deployed for Ruby applications. This report enables you to compare your own deployed application stack with those used by other development teams. Are you behind the curve in Ruby? Are there some plugins or gems that your team may want to consider? Have you developed a gem and wonder how many apps use it in production? This is a good place to start that conversation.

Many of our customers have opted in to have their performance data shared with the Rails Core Team to aid in the team’s ongoing work on the platform. In addition to that data New Relic also aggregates information on the versions of OS, Ruby, and Rails used and the various plugins deployed. In this report we list only the most commonly used Ruby and Rails versions and only the most commonly used plugins and gems because a complete list is too long to post here and is probably not all that useful.

The research is done by identifying the versions of deployed application stack components on tens of thousands of application instances monitored by New Relic. This report does not measure market share of any software. It is intended to provide Ruby on Rails developers with a means to compare their own deployment choices against the larger population of deployed production RoR apps.

Most Commonly Deployed Ruby Versions
(% of Ruby Applications)

Ruby Versions

Ruby 1.8.6 continues to drop in popularity, down just over 17% in the last few months but is still in place in just over a third of the applications we monitor. It appears most users are upgrading to 1.8.7, as the growth of the Ruby 1.9 is still nascent.

 

Most Commonly Deployed JRuby Versions
(% of JRuby Applications)

JRuby Versions

 

More and more applications are using JRuby since our last state of the stack. Over 50% of the JRuby apps monitored by New Relic are running on 1.5.X..

 

Most Commonly Deployed Ruby Web Server
(% of Ruby Applications)

Ruby Web Server Versions

 

The race is on! Thin and Passenger are almost neck and neck at ~40% each. Surprisingly Mongrel has dwindled to 10% while Unicorn represents less than 3%.

 

Most Commonly Deployed Rails Versions
(% of Rails Applications)

Ruby Web Server Versions

 

Rails 2.3.5 is holding strong representing a third of the Rails apps. While still quite new, Rails 3 comes in with a respectable 7.8%, up from 2% of apps using the beta as of our last state of the stack.

Most Commonly Used Gems
(% of Rails Applications)

This is the list of the top 50 gems deployed. If a gem you are interested in is not listed, tweet @newrelic with the gem name and we can tweet the percent of use across our customer base. How to read our Gems chart: The number following the name of each gem represents the percent of hosts having this gem deployed.

Gems

Most Commonly Used Plugins
(% of Rails Applications)

This is the list of the top 50 plugins deployed. If a plugin you are interested in is not listed, tweet @newrelic with the plugin name and we can tweet the percent of use across our customer base. How to read our plugin chart: The number following the name of each plugin represents the percent of hosts having this plugin deployed.

Plugins

Comments?

We would like to get your feedback on this report. Is it useful? What do you find interesting in the data? Use the Feedback button below. Thanks.

Tell us what you think. We’d love to have your feedback.

feed me

RSS FeedRSS feed

on iTuneson iTunes

email notification

We'll email you when more become available. We will not spam you. Swearsies.

 

tags

Interview

Caching

Database

eCommerce

Capacity Planning

Scaling Rails

Cache Expiration

Agile Development

Plugins

Ruby Versions

Rails Versions

Load Testing

application bottlenecks

scaling database

Cloud Computing

Facebook Development

MySpace Development

Social Apps

Scaling

Rails

application

bottlenecks

Ruby Gems

 

Feedback

RailsLab is brought to you by these expert contributors.

New Relic