How an Ecommerce Site Cut Latency to 0.07 Milliseconds

PinIt
mlb-cubs-secondary_md

Ecommerce websites have a need for speed.

Company: Stance.com

Industry: Ecommerce, sales

Use case: Application performance, IT analytics

Business Opportunity or Challenge:

Ecommerce latency can be killer. Websites frequently have to handle large swings in traffic during certain times of the week, month, or year. When websites can’t handle such traffic – whether through slow server response time, a lagging checkout process, or inaccurate inventory updates – customer experience suffers and sales are lost.

One issue for ecommerce is how to accommodate traffic spikes in their IT architecture. In planning, it’s a classic over/under problem: Keeping too much infrastructure on hand can be costly, but if there’s not enough to handle traffic peaks, latency rises and revenue suffers. And these days, the architecture has to be fast and responsive: It’s been estimated that, if an ecommerce site is making $100,000 per day, a one-second delay in page loading time costs $2.5 million in lost sales each year.

That was the issue facing Stance, which has a new marketing twist on a once-ordinary clothing item: socks. Stance showcases innovative sock designs, including those by athletes, performers and cultural icons – a group it calls Punks & Poets.

punksandpoets

When one of Stance’s celebrities tweets about a new sock design, traffic can spike along with ecommerce latency.

When one of Stance’s celebrities rolls out a sock design, people flock to the site. As an example, when Rihanna, one of Stance’s creative directors, tweeted about her limited-edition product on Stance.com to 60+ million followers, the site not only had to withstand large bursts of traffic but maintain an extremely fast checkout process.

Solution:

The Stance.com team wanted an IT architecture that could support a frictionless shopping experience. To cache pages, the website had already been using Redis, an open-source in-memory data structure store. But it also wanted a fast system for updating inventory.

”Our stock notifier system has to simultaneously inform thousands of clients about inventory availability with submillisecond latencies,” Andrew Spencer, director of IT for Stance.com, said in a case study.

The website turned to Redis Cloud, which offers Redis as a cloud service, to fetch inventory information from a system of record and transmit it to requesting clients. One big factor in choosing Redis Cloud was that it could auto-scale with zero downtime. Stance.com was also moving services from Amazon Web Services to Google Cloud, and Redis Cloud was the only provider that offered Redis from all public clouds.

Measurable and “Soft” Benefits:

Stance is one of the few modern ecommerce websites that is wholly a single-page application. Its tech stack consists of Magento as an API, and MongoDB, ExpressJS, AngularJS, NodeJS and Redis — a stack known affectionately as MEANR.

According to Stance, Redis was key to the performance and scalability of the platform. “Auto-scaling is great to have, and Redis Cloud handles all our scaling needs without any downtime”, says Andrew. “Other options did not provide automatic scaling, and managing this is actually not trivial.”

For the stock notifier system, Redis’ latency stayed consistently below 0.07 milliseconds even as it was handling over 1,000 requests per second.

“Redis barely broke a sweat,” said Andrew.

Stance also uses Redis to store snapshots of their 3000 SKUs in memory, making the shopping for their users zero-friction. With product filtering achieved in sub-second response times, users can reportedly find anything they want nearly instantaneously.

Source: Redis Labs

Photo credits: Stance.com

Related:

White paper: using in-memory tech for operational intelligence

How in-memory data grids turbocharge analytics

Leave a Reply