# Load Testing APIs for Holiday Traffic and Dynamic Scalability

DevFeed: [Load Testing APIs for Holiday Traffic and Dynamic Scalability](<https://devfeed.tech/articles/hey-you-busy-i-have-thousands-of-questions-to-ask-you-26527.md>)

Original publisher: [Read original article](<http://engineering.curalate.com/2018/12/31/holiday-load-prep.html>)

Published: 2018-12-31T17:00:00Z

Content type: tutorial

Language: en

Sources: [Curalate](<https://devfeed.tech/sources/curalate.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [Low Latency](<https://devfeed.tech/topics/low-latency.md>), [Network](<https://devfeed.tech/topics/network.md>), [API](<https://devfeed.tech/topics/api.md>), [data](<https://devfeed.tech/topics/data.md>), [Bash](<https://devfeed.tech/topics/bash.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [availability](<https://devfeed.tech/tags/availability.md>), [bash](<https://devfeed.tech/tags/bash.md>), [data](<https://devfeed.tech/tags/data.md>), [forecasting](<https://devfeed.tech/tags/forecasting.md>), [holiday](<https://devfeed.tech/tags/holiday.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [network](<https://devfeed.tech/tags/network.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [testing](<https://devfeed.tech/tags/testing.md>)

## AI overview

This engineering article explains how Curalate prepared its APIs and infrastructure for increased holiday traffic. It describes using historical traffic data to estimate peak requests per second, load testing with steadily increasing request rates, and dynamic scalability to avoid over-provisioning costs.

## Source excerpt

If you're a brick-and-mortar business owner, you quickly identify patterns in your customer foot traffic, especially around the holidays when achieving your sales goals depends on both timely and quality service. If you're an e-commerce business owner, like many of Curalate's 1,000+ customers, it's really no different: holiday sales are crucial to success and they depend heavily on your site's reliability. At Curalate, we take great pride in maintaining high availability and low latency for our client integrations throughout the year. But over the "Black Fiveday" period--Thanksgiving through Cyber Monday--and the week leading up to and including the day after Christmas, we see a roughly 5x increase in network requests to our APIs from our clients' sites. Therefore it's crucial that we both design our systems to handle that increased load and perform load testing on the systems ahead of time to prove that our designs work. This post describes how we carried out load tests of our infrastructure to prepare for the holiday traffic increase on our APIs. Additionally, it highlights how our approach towards dynamic scalability reduces costs by avoiding over-provisioning. Load Test Planning Our first question was: what volume of traffic can we expect? To answer that, we consulted the last several years of data describing our holiday traffic load pattern. Second: what are the important dimensions of that traffic? For example, do we expect a majority of the traffic to be cached or uncached? Do total requests matter or only instantaneous load? Since a previous blog post discussed cached versus uncached testing, this post focuses on API request rate. Total requests in a day is interesting, but only suggests an average requests-per-second (RPS) rate. The metric we're mostly interested in is the daily peak RPS rate. This gives us an idea of the busiest moment in our day, and if we can handle that rate, we should have confidence that we can handle lesser request rates at other times