Dropbox’s hybrid architecture: bridging physical data centers and AWS

Dropbox runs one of the largest global deployments on Amazon Web Services, using S3 for object storage, tens of thousands of EC2 instances, and services including SQS and Route 53. On a typical day the company pushes hundreds of gigabits per second through EC2 and S3 and conducts massively parallel operations across more than one trillion stored objects.

That AWS footprint is only half of Dropbox’s infrastructure. The company also operates large physical data centers in two geographical regions, running tens of thousands of servers that store and serve the metadata for every file in Dropbox. With about one billion files saved daily, those servers must be both fast and reliable, and orchestrating the hundreds of backend services that make up the product remains an ongoing challenge for the infrastructure team.

At AWS re:Invent in late 2014, Dropbox engineers presented a deep dive into one system that helps bridge these worlds: a message bus that performs operations for every file update in near-realtime. The system connects Dropbox’s physical data centers to AWS, using SQS as the transport layer. SQS serves as a fast, reliable, no-maintenance message bus that sustains roughly 20,000 requests per second on average, with bursts to about 300,000 requests per second. The near-realtime pipeline powers features such as fast photo thumbnails and video previews for Carousel, multi-platform Microsoft Office document previews, and realtime full-text search.

Mailbox goes all-in on AWS push notifications

Mailbox, Dropbox’s email client for iOS, Android, and Mac OS X, operates entirely on AWS. The Mailbox team leaned on additional AWS services to keep its engineering staff small and to iterate quickly. Simple Notification Service (SNS) support for mobile push proved particularly valuable, letting the team support new platforms and scale its push notification pipeline with minimal effort.

Sean Beausoleil, an engineering lead on Mailbox, spoke at re:Invent about why the team chose SNS and how it became a foundational component of the service. His talk is available on YouTube, starting at the 36:49 mark.

Small team, large scale

Dropbox’s infrastructure has grown exponentially since its 2008 launch, but the company still runs everything with fewer than 100 infrastructure engineers across offices in San Francisco, Seattle, and New York City. The team continues to push both AWS and its physical infrastructure to their limits.