Blog

Another Black Friday, Another eCommerce Meltdown

by Michelle McLean, posted on Tuesday, November 29, 2016

Black Friday. Retailers know it's coming every year, and still – every year – someone has a spectacular failure. This year Macy's gets top billing – asking customers to wait to shop. Since 500 milliseconds of web delay is estimated to cost 5% of revenue, how much can we guess Macy's lost by asking EVERY shopper, for hours, to wait to shop? It's clearly in the millions of dollars. And how many of those who clicked over to Nordstrom's or Kohl's in frustration will just keep shopping on those other sites?

So what did Macy's get wrong? Scaling infrastructure for big traffic increases is fairly easy across most technology areas. Organizations know how to scale WAN links, network infrastructure, and web servers. So what did Macy's miss? Likely, the database.

"You have handle 5x to 15x your usual traffic on Black Friday," says Craig Thayer, CTO of Sazze, parent company to numerous eCommerce websites including Black Friday FM. "Turns out the database is the hardest part of the infrastructure to scale fast, because you have to also make application changes. You change the code, iterate, test, rinse and repeat."

Often, when you can't reach a site or app during a busy time, it's the database that has hit a wall. Organizations of all sizes these days are rushing to take advantage of additional capacity in modern databases. Microsoft is pushing its SQL Server 2016 launch, and the open source world is embracing MySQL 5.6. Both modern databases offer more capacity and better failover, aimed at improving application uptime.

The challenge for organizations, as Sazze's Thayer points out, is that applications have to know how to talk to those databases. That takes time – and can't be done in rapid response in the middle of a Macy's meltdown during Black Friday. It's got to be done in advance.

Organizations have a couple choices for how to adopt these databases. They can recode their apps – teaching those apps how to send some traffic to additional database servers to spread out the load. Or they can use technology like they have for their web server farms – load balancing technology – in front of their databases and have that software redirect the database load automatically. The benefit of using database load balancing software is that it avoids the application recoding – and subsequent "rinse and repeat" cycles that Sazze's Thayer is keen to avoid. So that option can often be implemented faster than recoding an app and provides additional benefits such as seamless failover.

Black Friday often serves as a warning for the rest of the December online shopping spree. The hope is that companies that experienced – or watched others have – a Black Friday meltdown can scale their infrastructure in time to be ready for that holiday shopping traffic.