Black Friday Load Testing Lessons to Learn for Free Shipping Day 2014
Will Free Shipping Day be bigger than Black Friday?
December 15, 2014

Alon Girmonsky
BlazeMeter

Share this

Black Friday may be behind us for another year, but Free Shipping Day is just around the corner.

On the 18th of December, nearly 1,000 online stores will offer free shipping for last minute holiday shoppers.

If you're one of these 1,000 retailers, no doubt you're rigorously stress testing your sites and apps to ensure they will run smoothly on the big day.

But is your testing enough to guarantee a smooth shopping day for your customers? Huge retailers like Best Buy, Tesco, Argos, John Lewis and Currys all had costly crashes on Black Friday 2014, despite extensive preparations and testing. On top of that, Free Shipping Day is likely to bring new, specific challenges for your site — and it's getting bigger every year.

Will Free Shipping Day be bigger than Black Friday? 2014 marks the 7th year for Free Shipping Day, and each year is bigger than the last. Since 2012, spending on Free Shipping Day has exceeded $1 billion and it has overtaken Black Friday's online spending for two years in a row. In fact, just two years after it was created, Free Shipping Day made its mark as the third heaviest day for online shopping in US history.

So there's a good chance that your website will be under even more stress this Thursday than Black Friday. The good news is that you can learn from mistakes made by others to ensure your website will be able to handle the load. Here are three lessons that we can learn this year:

Lesson #1. Don't Underestimate the Load

Both Tesco and Best Buy underestimated the huge surge of traffic that came to their sites on Black Friday. Tesco reported having five times more customers than 2013 and Best Buy witnessed "record levels of website traffic".

There are many reasons why traffic might be higher than you expected, such as the rising popularity of Free Shipping Day, the increasingly widespread use of online shopping and even the fact that you might be getting traffic from your competitors if their websites are down.

That's why it is important to try to bring your system into failure when running your load testing. Whether your failure will be caused by CPU, memory, connection pools, a network band issue or something else, you need to find it. I recommend running a sequence of tests while continually increasing the load and monitoring your hits/s throughput as you do this. Keep on doing this until you hit a scaling problem.

For example: the chart below shows where your system reaches its capacity (in this case after 300 virtual users).


Lesson #2: Recover Quickly from Technical Problems

On Black Friday, Tesco's website was down for 12 hours – half of the busiest shopping day of the year.

Every minute that your website is down, you're losing hundreds of thousands of dollars in lost revenue. So, whether a crash is caused by high traffic loads or a power outage, it's vital to put plans in place to ensure you'll recover quickly.

I recommend ensuring you have back-up servers and locations ready so you can recover quickly if there's a problem. Set up a database replication, database failover cluster or application failover cluster. If there's a problem, just switch over to the failover location. You won't have to wait for your main server to recover as your backup can be running while you resolve the critical issues.

Lesson #3: Run Load Tests from Different Devices in the Production Environment

Shortly after Best Buy's Black Friday crash, a company spokesman gave the following statement: "A concentrated spike in mobile traffic triggered issues that led us to shut down BestBuy.com in order to take proactive measures to restore full performance.”

Your traffic load won't come in equal measures from all devices – or locations for that matter. The vast majority of your traffic might come from one type of device and one specific region. That's why it's crucial to run your tests in different geo-locations and from different devices on your live production site. This is the best way to ensure that your testing is accurate, that your test plan is well organized and that you're stressing every point in the entire chain of delivery. I recommend testing in your production environment at a time when traffic is very low (such as 3am on a Sunday morning) and informing your customers that there may be some downtime during these hours.

There are various ways that you can run such tests. You can use an open source load testing tool and buy several Virtual Private Servers (VPS) in different geo-locations to test your web or app servers under heavy load from various geographical locations. Alternatively, you can use cloud performance testing tools to simulate the load from various devices and multiple geo-locations.

Specific Challenges of Free Shipping Day

In addition to learning from all of the above mistakes, it's also important to address the specific challenges that Free Shipping Day will bring.

For 24 hours only, developers need to ensure that the checkout tallies won't include shipping costs. Some companies will have a flexible framework in place that enables them to just click a checkbox to exclude shipping fees. However, most companies won't have such a framework in place. Instead, they will have software that needs adapting. In such cases, many developers will make ad-hoc changes to a few lines of code to remove the shipping fees for these key 24 hours.

However, this type of “quick fix” can lead to technical glitches or even incorrect pricing calculations. If the fix isn't implemented correctly or the developers fail to update every page that includes the shipping fees, your customers may see additional costs on pages that you overlooked.

In addition to these functional issues, all of the code changes might lead to unforeseen problems with the performance of your website or app.

To avoid such issues, it is critical to avoid making changes to the code at the last minute. You need to ensure that you have enough time and the right environment to check the repercussions of any changes that are made.

Once the changes have been made, take the time to check the functionality in the staging or QA environment. It's worth asking your QA team to ensure that it is operating as anticipated. Once the change has been verified from a functional perspective, then you need to check that it works on a high scale. To do this, it's best to run a load test in the production environment around four to five hours before Free Shipping Day officially begins. This will give you enough time to make any last minute fixes that you need before your customers start flooding your site.

If you take all of these considerations into account, I'm confident that Free Shipping Day 2014 will be successful and profitable for you and your company.

Alon Girmonsky is Founder and CEO of BlazeMeter.

Share this

The Latest

March 18, 2024

Gartner has highlighted the top trends that will impact technology providers in 2024: Generative AI (GenAI) is dominating the technical and product agenda of nearly every tech provider ...

March 15, 2024

In MEAN TIME TO INSIGHT Episode 4 - Part 1, Shamus McGillicuddy, VP of Research, Network Infrastructure and Operations, at Enterprise Management Associates (EMA) discusses artificial intelligence and network management ...

March 14, 2024

The integration and maintenance of AI-enabled Software as a Service (SaaS) applications have emerged as pivotal points in enterprise AI implementation strategies, offering both significant challenges and promising benefits. Despite the enthusiasm surrounding AI's potential impact, the reality of its implementation presents hurdles. Currently, over 90% of enterprises are grappling with limitations in integrating AI into their tech stack ...

March 13, 2024

In the intricate landscape of IT infrastructure, one critical component often relegated to the back burner is Active Directory (AD) forest recovery — an oversight with costly consequences ...

March 12, 2024

eBPF is a technology that allows users to run custom programs inside the Linux kernel, which changes the behavior of the kernel and makes execution up to 10x faster(link is external) and more efficient for key parts of what makes our computing lives work. That includes observability, networking and security ...

March 11, 2024

Data mesh, an increasingly important decentralized approach to data architecture and organizational design, focuses on treating data as a product, emphasizing domain-oriented data ownership, self-service tools and federated governance. The 2024 State of the Data Lakehouse report from Dremio presents evidence of the growing adoption of data mesh architectures in enterprises ... The report highlights that the drive towards data mesh is increasingly becoming a business strategy to enhance agility and speed in problem-solving and innovation ...

March 07, 2024
In this digital era, consumers prefer a seamless user experience, and here, the significance of performance testing cannot be overstated. Application performance testing is essential in ensuring that your software products, websites, or other related systems operate seamlessly under varying conditions. However, the cost of poor performance extends beyond technical glitches and slow load times; it can directly affect customer satisfaction and brand reputation. Understand the tangible and intangible consequences of poor application performance and how it can affect your business ...
March 06, 2024

Too much traffic can crash a website ... That stampede of traffic is even more horrifying when it's part of a malicious denial of service attack ... These attacks are becoming more common, more sophisticated and increasingly tied to ransomware-style demands. So it's no wonder that the threat of DDoS remains one of the many things that keep IT and marketing leaders up at night ...

March 05, 2024

Today, applications serve as the backbone of businesses, and therefore, ensuring optimal performance has never been more critical. This is where application performance monitoring (APM) emerges as an indispensable tool, empowering organizations to safeguard their applications proactively, match user expectations, and drive growth. But APM is not without its challenges. Choosing to implement APM is a path that's not easily realized, even if it offers great benefits. This blog deals with the potential hurdles that may manifest when you actualize your APM strategy in your IT application environment ...

March 04, 2024

This year's Super Bowl drew in viewership of nearly 124 million viewers and made history as the most-watched live broadcast event since the 1969 moon landing. To support this spike in viewership, streaming companies like YouTube TV, Hulu and Paramount+ began preparing their IT infrastructure months in advance to ensure an exceptional viewer experience without outages or major interruptions. New Relic conducted a survey to understand the importance of a seamless viewing experience and the impact of outages during major streaming events such as the Super Bowl ...