• How Airbnb hardened Mussel, our key-value store, with smarter traffic controls to stay fast and reliable during traffic spikes. • By Shravan Gaonkar , Casey Getz , Wonhee Cho Introduction Every request lookup on Airbnb, from stays, experiences, and services search to customer support inquiries ultimately hits Mussel , our multi-tenant key-value store for derived data. • Mussel operates as a proxy service, deployed as a fleet of stateless dispatchers - each a Kubernetes pod. • On a typical day, this fleet handles millions of predictable point and range reads. • During peak events, however, it must absorb several-fold higher volume, terabyte-scale bulk uploads, and sudden bursts from automated bots or DDoS attacks. • Its ability to reliably serve this volatile mix of traffic is therefore critical to both the Airbnb user experience and the stability of the many services that power our platform.
Article Summaries:
- Airbnb upgraded its key‑value store “Mussel” from a simple QPS‑based rate limiter to an adaptive traffic‑management system. The new QoS framework replaces static per‑client quotas with resource‑aware rate control that charges requests by rows, bytes, and latency. It adds load‑shedding tiers that prioritize critical traffic (e.g., customer support) during capacity crunches, and real‑time hot‑key detection that mitigates DDoS or burst traffic by caching or coalescing duplicate requests before they hit storage. These layers aim to maximize useful throughput while maintaining low latency, ensuring Mussel remains reliable during predictable loads and sudden traffic spikes.
Sources: