"Examples" Posts


Scaling Illustrated

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

Last week we added a third web server to one of our reporting applications. We’ve been growing at a steady rate and we wanted to reduce the load across our web tier (losing one of the web servers could put too much traffic on the remaining server).

Before Will Farrington (one of the fine folks at Rails Machine) added the third web server to the load balancer rotation, we setup a couple of charts to watch the magic.

Scout’s charts now refresh as metrics are reported so we could quickly see the impact.

Did the third web server help? Here’s what we saw:

Server Load

Our third web server helped decrease the load across our web tier:

Scout’s Server Load plugin is installed by default on your server.

Request Distribution

We confirmed the change in request distribution across the 3 web servers:

Install either the Apache or Ruby on Rails Monitoring plugin to view request metrics.

We love seeing visual confirmation of a job well done!

 

Understanding Linux CPU Load - when should you be worried?

By Andre Bullet_white Posted in Examples Bullet_white Comments 16 comments

You might be familiar with Linux load averages already. Load averages are the three numbers shown with the uptime and top commands - they look like this:

load average: 0.09, 0.05, 0.01

Most people have an inkling of what the load averages mean: the three numbers represent averages over progressively longer periods of time (one, five, and fifteen minute averages), and that lower numbers are better. Higher numbers represent a problem or an overloaded machine. But, what's the the threshold? What constitutes "good" and "bad" load average values? When should you be concerned over a load average value, and when should you scramble to fix it ASAP?

Read More →

 

Monitoring Amazon EC2 Instances

By Derek Bullet_white Posted in Examples, HowTo Bullet_white Comments Comments

UPDATED – We’ve made it even easier to monitor ec2 instances. Check out our post on cloud monitoring.

Read More →

 

Taking the guesswork out of scaling

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

Determining a web application’s hardware resources isn’t easy (or cheap). Frankly, it’s often just guesswork. Even when you build benchmarking scripts, they can miss key behaviors and ignore important metrics.

Scaling becomes a lot less stressful when you can quickly compare a history of your application data with server performance.

For example, we did this to get a better understanding of how our Scout server performed during our invitation process. The graph below was generated through Scout and shows the relationship between user accounts and the server load. As we expected, the overall load on the server increased as the number of accounts increased. Scout shows us how this data is correlated – it gives us an idea of how many accounts our current hardware can support.

Scout Accounts vs. Server Load
accounts vs load

It’s trivial process to regularly feed Scout your application data (user signups, orders, revenue, etc):

  1. Start with this Rails App Plugin Sample (this assumes a Ruby on Rails application, but you can do this with any framework/language)
  2. Grab your application data – just use ActiveRecord!
  3. Put the plugin on your server (can protect behind basic auth)
  4. Add the plugin
 

Graphing Rails Performance With Scout

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

We’re using Scout, our monitoring and reporting application, to graph the performance of our Rails applications and servers.

I’ve uploaded a video that looks at how one of our applications, PlaceShout, impacts the server load and Mongrel memory usage. I also compare PlaceShout’s footprint to another server.

Watch the video: Graphing in Scout (1 min 47 sec)

Past Videos on Scout:

Installing the Scout Client (1 min 39 sec)

Installing the Rails Requests Plugin (1 min 55 sec)

Signup for our launch email list

We’ve started emailing invites to Scout. Signup on our homepage, and we’ll give you access to Scout before the public launch.

 

How popular are you? Find out with Scout

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

Tracking the results of your blatant self-promotion campaign can be a time-consuming effort. You might be using Google Analytics for web traffic and FeedBurner for blog subscribers. You’re probably checking link referrals. You’re querying the database for usage statistics (user signups, logins, etc.), etc.

Scout is an honest friend that gives it to you straight. Our friendly retriever will track, mash, and graph all of this data in real-time.

For example, below is a graph generated by Scout. It shows the FeedBurner circulation of this blog (in red) vs. unique visits from Google Analytics on our Highgroove homepage (in blue):

blog_vs_highgroove.png

It doesn’t look like there’s a huge correlation there. What about unique visitors on PlaceShout (in red) vs. unique visitors on our Highgroove site (in blue)? Data via Google Analytics:

placeshout_vs_highgroove.png

There’s a correlation there. Traffic to PlaceShout appears to drives traffic to Highgroove.

Currently, 3 Scout Plugins exist for grabbing external data:

Seeing this data is extremely useful for answering questions that take quite a bit of work to find out manually (and can’t be updated in real-time):

  • How many of our unique visitors create a shoutout on PlaceShout?
  • As the number of sites linking to us increases, how does this impact traffic on our site?
  • How is traffic impacted when we publish our email newsletter?

The great thing about these reports is they don’t require any updates – Scout continually grabs new data and updates the graph.

Signup for our launch email list

We’re launching Scout this winter – click here to signup for our launch notification. We’ll email that list before the public launch.

Get Immediate Access to Scout

I’d like to create a plugin to report back the number of people linking to a url on del.icio.us, but haven’t had time yet. Want to create this plugin? Shoot me an email at (derek at highgroove dot com) and I’ll give you immediate access.

Past posts on Scout:

 

Older posts: 1 2 3