Yottaa's Site Optimization & Web Performance Blog

Assessing Performance and Reliability of Page Assets (or, "How Reliable IS the Facebook Widget?")

Oct 23, 2012 4:06:00 PM

Posted by Ilya Mirman

In a recent blog post, I wrote about a Facebook widget slowing down Lenny Kravitz’s new web site.

To drill into this a bit more, I decided to monitor performance of just that asset – monitoring the Facebook widget using Yottaa’s network of real browsers located across the planet.  The goal was to assess:

  1. What is the nominal performance of the widget?
  2. How reliable is it?
  3. How often are there performance outliers, and how bad are they?

(Incidentally – we offer a free monitoring account, and you can set it up in about 5 seconds.)

The Data

After setting up the monitor and waiting a few days, Yottaa collected thousands of samples.  Here’s a scatter plot of the Time to Interact metric.

I decided to define 3 key issues (with corresponding alerts that can be delivered via email or SMS):
FB issues

So – how did Facebook do?  Well, on average the widget is fairly robust – though there are definitely an occasional performance problem.   

FB stats

The widget typically pops up in just about half a second (458 msec).  But, there are the occasional outliers, as seen on the scatter chart above.  So, I wanted to drill into the data further.  One cool feature we recently rolled out is the ability to export any metrics collected.  So, I exported the data into Excel and did some analysis.  From the histogram, we see that approximately 3.5% of the samples are above one second (in fact, sometimes reaching 30 seconds – likely during traffic spikes for the Facebook widget).
FB histogram 

And, to get a sense as to how this varies around the world, here’s the performance by geography – both the average value, and the standard deviation (as an indicator of just how much variability there is in that location).

by city

It’s interesting to note that there’s quite a bit of variation in performance: In Tokyo, the widget loads quickly, with a very small amount of variation; on the other hand, Sao Paolo are 2-4X slower, with an order of magnitude more spread.

Alerting & Notification

Yottaa Site Monitor kept me notified whenever the widget encountered any of the issues I defined above.

FB issues 2

So – What Can You Do to Address This?

Well, if you’re on the Facebook infrastructure team, you may want to look into the variability in the widget’s performance! :) In fact, it’s ironic that while Facebook does a ton of things to make THEIR site fast, their widgets tend to make OTHER sites slower.

Otherwise, if you’re responsible for a web site that relies on the FB widget, you can minimize the performance hit by loading it asynchronously.

And the broader point is: there’s a lot of reasons a site can go down – so monitoring, alerting, deep-dive analysis and troubleshooting are invaluable tools that are now within reach of any company, rather than Internet giants like Amazon and Facebook.


Topics: Application Optimization

Posts By Topic