Online Store Server Scaling for those Black Friday Days
Three Ways to Handle Bursts of Server Overload
So what is this about? E-commerce site going down to user overload. Why and when it happens and how to avoid it.
I’m a gamer through and through. The day my family bought our first pc, I was six years old and the first thing I did was to install all the demo games. Since then I have never looked back. Fast forward 20-years and I found myself playing the single most popular game in pc gaming history - “World of Warcraft”. Now why is this relevant to a Magento online store?
“World of Warcraft” goes through very easy to follow cycles. User subscription declines followed by Blizzard releasing a new expansion. The problem is that Blizzard always and without fail chronically underestimates the amount of returning players and doesn’t get enough servers to handle the load, which leads to game crashes and huge login queues.
This is similar to an online store misjudging its traffic for Black Friday. Again being a gamer I’ll use the example of www.btgames.co.za, they are a South African based gaming retailer with a massive online retailer. Leading up to Black Friday 2017 they put out massive amounts of marketing about the specials they would be having, drumming up support to a fever pitch. Come the morning the site was flooded with so many requests that it crashed. It was down for the majority of the day, leading to hundreds if not thousands of lost sales.
So what happened? Not being their host I can’t say with certainty but I can offer a few ideas that hold true for any site in the same situation. The first possibility is the host either overestimated the strength of the system they provided or under estimated the load the Black Friday sale would generate. The next is the host recognised the possibility and recommended an upgrade but the customer felt that the cost was more than the potential surety was worth. The last is the one I hope isn’t the case and that he host was caught napping at the wheel. Not noticing the upcoming massive sales event and not even considering preparing for it.
So now it’s happened. How do we stop it from happening again? There are three possible approaches, all of which assume that your online-shop is hosted on a stable cloud environment.
Manual Server Scaling based on Forward Planning
This option covers pre-planned events but could miss an unplanned traffic burst. You manually manage your server size, increasing it a week ahead of a massive sales event like Black Friday or a similar online sales event. Your aim is to increase your server and bandwidth size to accommodate the traffic you assume will be coming. After the event has passed, you downsize the server for normal operations and reap the cost savings in over long run.
Over Spec Your Server
Assuming you have the budget, you simply buy a brute of a server, with enough data that it doesn’t matter what happens you’ll take it and not miss a beat. The down side to this is completely financial. 90% of the time you’re not going to need this big a system, but it’s there when you do.
Auto Scaling Server
The third and last option is bot managed hosting package. Packages like these are usually offered at a premium, by premier cloud providers like AWS (Amazon Web Services), however they come at a steep cost. The system works by scaling your hosting package based on the current server load. So as your system needs more resources, more will be allocated to it by the system Packages like this are usually cheaper than the brute force option and will give you the same confidence of knowing you have the power you require when you need it.
So in closing my thoughts. You need to make sure you are prepared for high volume events no matter how you choose to do it. But more importantly, communicate with your host/client and make sure the needs are understood so you can prepare.