Primary image for Can Your Site Handle Going Viral?

Can Your Site Handle Going Viral?

It’s every publisher’s dream to “go viral” and reach thousands, if not millions, of new people. Many videos, tweets, images, articles, and infographics are created with exactly this goal in mind. But far too often, less thought goes into ensuring a website is ready if its content does reach viral status. Going viral is like catching lightning in a bottle. It brings a powerful surge in page views—which translates to a surge in ad revenue, subscribers, and brand recognition. But, if your website isn’t designed to handle that sudden and simultaneous influx of demand, it will buckle under the pressure. If your site gets slow or goes down under the traffic load that going viral brings, it’s a wasted opportunity with real dollar signs attached to it.

What’s more, should your site crash at such a critical time, the technical team’s capabilities will be questioned, and animosity may develop between marketing/content teams and the technical side of the house. Not to mention, that crashed website hurts your brand reputation and Google ratings. Even after you get things back up and running again, all of these impacts reduce your ability to go viral in the future.

Clearly, failing to prepare your website for a viral traffic load is not a smart move for any organization, especially large-scale publishers. The bigger question then is, how do you ensure your website is ready for its big, viral moment? Here are three things you can do right now.

Check Your Cache Handling Strategy

When it comes to strengthening your website’s ability to handle viral traffic, cache is king.

Your large-scale publishing operation is already using a caching proxy of some sort on your site. It might be something you manage yourself like Varnish or Nginx. It might be a hosted CDN like Cloudfront, Cloudflare, or Fastly. Or, it could be some combination of both. Caching proxies store a copy of your webpage in a high-speed storage layer in order to quickly serve it up to viewers without breaking a sweat.

But, what happens when an object on a webpage is removed or updated? After all, nothing lasts forever. Cached objects eventually become stale. Consequently, the cache must be invalidated. And, as software developer Phil Karlton once famously said:

There are only two hard things in Computer Science: Cache invalidation and naming things.

Cache invalidation is a method for telling the cache that your content has changed, and that it’s time to fetch the latest version from your site’s backend. This seems pretty simple at the surface, but there are all sorts of little edge cases that can jump up and bite you when your site is under load.Thundering herds, serving stale/invalid data, ensuring user data remains private, are all common problems. When experiencing really high traffic, you essentially depend on the performance of your cache. Securing your website for high performance and delivery speed relies on smart caching strategies.

However, there’s not a lot of information floating freely around the web with regard to exactly what those strategies are and how to implement them on your site. Too often, large-scale publishers are unprepared for their cache to support high traffic volume. Caught napping, they now have to learn on the fly through the trial of fire as they watch their site buckle under a viral load, and lose money and user trust with every minute the site is down.

Consulting with a web dev firm experienced in supporting large-scale publishers is a worthwhile investment. These developers have seen the problems other sites encounter with caching and load times, and they bring all of that knowledge packed into smart techniques to help you get it right.

Don’t Skimp on Website Performance Essentials

Of course, you can’t rely on your cache alone to carry you through the thrill of going viral. The cache won’t cover all your pages all the time. When users land on an uncached page, your website’s baseline performance determines if they stay and convert or bounce. In constantly preparing for the possibility of going viral, you must also keep an eye on how fast your site can load and render pages without the cache.

How many times have you lost your will to visit a website because it took forever to load? Perhaps the only worse web experience is watching your visitors give up on your website for the same reason. To handle viral traffic, your site’s backend must respond to requests in under 200 milliseconds. Page performance at 500 milliseconds is cause for concern. And, if your site takes one second or more to respond, it’s straight-up problematic for a few reasons:

Slow Pages Kill Conversions

The better your site performs, the faster your site’s pages load, and the more engagement you will have from your users. Nearly all users will abandon a site if any page takes more than three seconds to load.

Bad Performance Balloons Infrastructure Bills

If your website isn’t optimized for fast and efficient performance, it’s laborious server requests require the servers to do more work when loading and rendering pages. This results in bigger infrastructure bills.

Slow Pages are Easily Trampled by Thundering Herds

If lots of users happen upon an uncached page all around the same time, they’ll take down your servers before the page ever gets cached. Faster pages are less susceptible.

Bots Can Bottom Out Slow Sites

Bots and crawlers don’t always behave nicely. Bots and poorly performing websites are always a bad combination. For example, when a bot starts crawling ten pages per second and your pages take one second to render, you will quickly find yourself in the midst of a denial-of-service attack on your site.

When you have content that goes viral, it’s like fueling your business with a rocket engine. Large-scale publishers who fail to optimize their website’s performance before the big viral moment, however, never get off the launchpad.

Set-up Site Monitoring and Alerts

While you can’t exactly plan to have your content go viral, you can prepare to go viral by keeping a constant pulse on the systems powering your website. You want to know about issues before they become costly outages. Proactively ensuring your site won’t crash is much much less work — and better for your bottom line — than reacting to a flood of user messages informing you that your site’s down. It’s a lot more painful to run out of gas on the side of the road and hoof it to the nearest gas station than to just keep an eye on your fuel gauge.

Monitoring your site’s vital signs is key to keeping everything humming. At a minimum, you should continually pay attention to a few critical reports:

Server Load

The key issue in server capacity is resource availability and utilization. Watch CPU and memory usage over time. While the exact proportion of capacity utilization that should raise an alert depends on your company policy, the following are some good benchmarks. If CPU and memory usage over time are always under 50%, you may be overprovisioned and wasting money. If they are frequently over 80% you may be underprovisioned and risk an outage during a traffic spike. Whatever thresholds you set for your site, they must be set at levels to give your team enough time to take decisive action as needed to avert a site crash.

Response Times

Track both your average and maximum server response times. Make sure they are within the acceptable threshold. Response times begin to increase as your servers are unable to handle increasing traffic. Response time reports serve like canaries in coal mines. Keep an eye on them to ensure you aren’t casually walking into a danger zone.

Uptime

Going viral isn’t the only reason your site can crash. If someone pushes bad code, or inadvertently changes the DNS configuration, your site will go down. Keeping tabs on your uptime lets you catch any concern quickly. Use a service like Pingdom or Status Cake to alert you if any of your most popular pages return an error or become unresponsive. Your uptime alerting system should check both cached and uncached versions of your site so you can catch problems in either part of the stack. Uptime alerting is your last defense in preventing a large outage.

Websites Unprepared for Traffic Spikes Can Have a Ton of Problems

As a publisher, your success hinges on how many page views your content gets. Going viral means tons of page views, but creates potentially big problems for your website’s infrastructure. Not preparing for your website to handle 10x its current traffic is short-sighted.

Not sure if your site is up to the task of viral traffic? Lincoln Loop can help. For over 15 years we’ve ensured large-scale publishers are ready to handle whatever the whims of the web throw their way. There are few problems we haven’t solved at least once. Let’s talk about your project.

Peter Baumgartner

About the author

Peter Baumgartner

Peter is the founder of Lincoln Loop, having built it up from a small freelance operation in 2007 to what it is today. He is constantly learning and is well-versed in many technical disciplines including devops, …