The BookMyShow Coldplay Conundrum: A Lesson in High-Scale System Design
Sunny R Gupta
Senior Director @JioStar (JioCinema/HotStar) | First Principles | Cloud Native | Scale | ex-Atlassian
On September 23, 2024, BookMyShow, India's leading ticketing platform, faced a significant challenge when tickets for Coldplay's highly anticipated Mumbai concerts went on sale. The platform experienced a crash just minutes before the scheduled ticket release, leaving thousands of eager fans frustrated and unable to access the booking page.
This incident serves as a prime example of the challenges software professionals face when designing large-scale ticketing systems, particularly in handling the "thundering herd" problem.
Understanding the Thundering Herd
The thundering herd problem occurs when a large number of processes or threads, waiting for a single event, are awakened simultaneously when that event occurs. In BookMyShow's case, this manifested as millions of users attempting to access the ticketing system at precisely 12 PM when sales opened.
Imagine a scenario where thousands of people are waiting outside a store for a limited-edition product. When the doors open, everyone rushes in at once, potentially causing chaos and overwhelming the store's capacity. This real-world analogy closely mirrors what happened to BookMyShow's servers.
领英推荐
The Challenges of High-Scale Ticketing Systems
Designing a system to handle such massive concurrent traffic presents several challenges:
Mitigating the Thundering Herd
To address these challenges, software professionals usually employ several strategies, including:
As we all understand, no one can guarantee 100% resilience. It is always going to be a tug of war between cost and availability. As we continue to push the boundaries of what's possible in large-scale system design, incidents like these remind us of the importance of continuous improvement and adaptation in the face of ever-growing user demands.