by Madhav Mohan

BookMyShow scores a six in T20 World Cup with queue management

Apr 10, 2016
BusinessEnterprise ArchitectureInternet

Viraj Patel, VP - technology, BookMyShow speaks about the steps taken to control traffic on the website and the app used during the 2016 World TwentyT20 World Cup cricket match. 

Thousands of supporters thronged the stadiums to watch the T20 matches, perform Mexican waves, create a rippling electrifying atmosphere and shout out jingles to support their teams. But how many of us put on our thinking hats to ponder one point—how do so many people get entry into stadiums to watch the riveting encounters?

The BCCI (Board of Cricketing Control of India) had appointed as their ticketing agency. We spoke to Viraj Patel, VP – technology, BookMyShow on how they went about controlling traffic on their app and site while selling tickets online.

“We could foresee the demand and supply difference when it came to selling World Cup T20 tickets and we wanted to provide customers a seamless ticketing experience,” says Patel.

With more and more consumers transacting online in India, BookMyShow decided to sell tickets via a lucky draw system.   

It works on a randomized algorithm to pick up registrants randomly from the registration database. The parameters set for selection are the match and the category chosen—naturally, users who have already won are eliminated. The lucky draw engine then starts picking up users registered for higher price value tickets and then moves to the lowest.

“We simulated about 5 million registrations to test our lucky draw system aggressively.” —Viraj Patel, VP – technology, BookMyShow

Through the lucky draw system, the company wanted to address the needs of two sets of customers—those who actually want to make a transaction and buy tickets and those who only wanted information about the match schedule, the stands available and the ticket prices for a particular match. This model helped in dividing traffic coming from both sets of customers, ensuring that there was no overloading of servers.

“A platform such as ours faces a lot of load during any major activity. To ensure the app or site doesn’t crash, we pre-empted the high load during World T20 and deployed a lucky draw system,” says Patel. 

Though there were few hurdles while implementing the project, some of the key challenges were handling millions of requests for lucky draw registration, restricting fake registration and eliminating repetition of users for the same match. The most crucial task was churning the registrations database and shortlisting winners within seconds.  

However, to overcome the issue, “we included caching technologies and queuing system in our tech stack for the registration process, which helped us in handling millions of registrations,” says Patel. OTP was made mandatory while registering and this eliminated fake registrations.

At the same time, Patel says, “we also simulated equivalent registrations of about 5 million registrations in our database to test our lucky draw system aggressively.”

With this, BookMyShow was able to sell tickets for all big world cup matches without technical glitches.

What was the role of Patel in this project? He explains, “My major focus was on security and scalability. We knew that World T20 is an international event; not only will it attract a lot of customers but also face threats from hackers who want to break the system.” To counter them, they hired White Hat hackers to hack into their systems to expose vulnerabilities.

Highlighting his role in the project, he says, “I had to define the complete architecture for the project. It was 100 percent in-house development, so the IT team at BookMyShow played a vital role in the development and testing of the lucky draw system.”

Throwing some light on the plans for the future, Patel said that, to give a fair chance to all users, they would like to use the lucky draw system for big events in the future.