Organizers of European Chess Championship 2014 contacted us with a request to organize a broadcast of their 3-day long live tournaments. There were a total of 616 players participating, with a total of 25 000 viewers over the course of 3 days. Our goal was to broadcast blitz and rapid chess games in real time on a virtual chessboard, supporting large traffic.
Since moves are usually made in a matter of seconds, limiting delay in transmission was the most important task. The main challenge was a quick transformation of moves we received into a format we could display. In blitz part of the tournament we were receiving moves from all chessboards as often as a few times per second. We had to show them in real time.
We based our solution on a node.js and a cluster of servers. We used MongoDB for storing historical games. We created a set of monitoring tools to measure any delays or problems in transmission.