Authors: Mike Moore, Nikash Ray, Venkata Naresh Bathula

Background

What is Redis

Redis is a high throughput low latency in-memory data structure store (supporting Lists, Sets, Sorted Sets, etc), which is often used as a database, cache, and message broker. We use Redis Labs — Redis Enterprise software in all of our data centers. Redis is used broadly across Groupon calling synchronously (blocking) and asynchronously (non-blocking calls by adding tasks into Resque).

Consistency vs. Availability

For most flows at Groupon we slightly favor availability (“always-on”) over consistency (CAP Twelve Years Later: How the “Rules” Have Changed). We determine the consistency needed from a business standpoint per endpoint, (e.g. a deal in the cache is consistent enough if updated within 1 minute of a content change; however an inventory change must be much more consistent to avoid oversell/undersell so we take steps to ensure consistency is sub-second). …

Michael Moore - Groupon

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store