As SoundCloud’s application and deployment architectures have evolved, so have the technologies it uses to get requests and connections to where they need to be. Today, they support 175 million monthly active listeners and hundreds of thousands of requests per second—and are still built on readily available, open source components.
Matthias Rampke offers a brief history of SoundCloud’s internal and external load balancing and explains how SoundCloud mixes and matches open source technologies to cover all its load balancing needs without the need for expensive hardware. Matthias’s talk is not a comprehensive overview of all possible ways to do load balancing but rather focuses on what works for us and how the pieces complement and complete each other.
Matthias explores in detail IPVS for layer 4 connection load balancing and HAProxy for layer 7 HTTP load balancing, with brief mentions of ECMP and SoundCloud’s service discovery mechanism. For each, Matthias explains which use cases they excel in, when and how they break down, and what to watch out for so they don’t catch you by surprise.
Matthias Rampke is an engineer at SoundCloud working with internal IT. As part of the Systems and Production Engineering teams, he has been operating, debugging, and frequently restarting the glue that holds SoundCloud together since 2013.
©2016, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org