Posts Tagged ‘IRCTC performance’

Discussing IRCTC website latencies and user frustrations

There was a discussion with IRCTC’s chief regarding website bandwidth issues, scaling, and related stuff on techgig. I am not totally satisfied with his response for a particular question.

The question & his response:

So, is it a deliberate strategy by IRCTC to not increase website capacity to allow more transactions per minute? 

No. We have increased our bandwidth 10 times, to allow more people to come and log in. But traffic keeps on peaking, especially during a particular time in the morning. Suppose, we were to increase capacity to unlimited ticket bookings a minute, then most tickets will be booked in the first hour. Of the 8 lakh people who log on simultaneously between 8 am 8.10am, only 50,000 manage to get tickets. There are about 7.5 lakh people who go dissatisfied each day. If we increase our capacity to handle 15 lakh concurrent connections, then about 14.5 lakh customers will go dissatisfied. The solution is to increase the capacity and number of trains. My aim is to double the 50,000 bookings to over-a-lakh successful bookings in the first hour, which will reduce the number of dissatisfied customers.

I’d say:

Why not at least scale it up that much so the customers doesn’t have to wait hours together only to discover that the tickets are all sold out. 8 lakh customers, 7.5 lakh dissatisfied customers. There will be at least a few thousands of customers who were waiting just for the page to load at multiple stages through the booking and the wait time ranges from a few minutes to more than half an hour – i.e,. so many thousands of man hours wasted in just an hour.

There are a few very simple bottlenecks that can be fixed with out much of an effort:

Home page

  • Homepage for irctc is approximately 25KB (with all the images, stylesheets and scripts).
  • He said there are 8 lakh logins bet’n 8AM and 8.10 AM. which means they have gone past the login page, i.e,. 800,000 * 25KB ~ 20GB of data transfer in a matter of ten minutes. Needless to mention that the number of users that have already loaded the page and in the process of authentication could be much higher than this 8 lakhs.
  • Many browsers will have these images cached, so at least there is 5 to 10 gigs of data transfer just in the first 10 minutes.
  • Users are only interested in the log in box, why not load that part first (using pagelets or a similar technology?), or just the login box, as in a mobile app, during the 8AM – 10AM window?
Search for trains
  • Station codes – The Ajax stuff makes the users wait so long to get the station codes. Until this part’s performance is tuned, these codes can instead be hosted as a static file which can be downloaded once, so users can download it & manually look it up using ctrl + f ; this will be faster by several folds.
  • Calendar – This is worse. The widget doesn’t load (during the peak – I’ve experienced it myself several hundreds of times), and you cannot enter the date manually.


  • Why would those captcha images take so long to load?

I agree the fact that there will always be a good number of users dissatisfied. But, if the aforementioned issues are addressed, IRCTC can effectively save hundreds or thousands of man hours for it’s customers by not letting them wait for unnecessary advertisements and useless widgets/ajax components.