Developing a ticket reservation system for the CERN Open Days 2019

Project goal

The goal of this project was to deliver a web-based ticketing system, with zero downtime, for the CERN Open Days 2019. The system had to be capable of handling multiple ticket-release dates and high loads, as well as providing a user-friendly and responsive interface.

 

R&D topic
Data-centre technologies and infrastructures
Project coordinator(s)
Artur Wiecek
Team members
Antonio Nappi, Franck Pachot, Luis Rodriguez Fernandez, Nuno Guilherme, Matos De Barros, Thomas Løkkeborg, Viktor Kozlovszky
Collaborator liaison(s)
Pauline Gillet-Mahrer, Christian Jacobsen, Eric Mitha, Cristobal Pedregal-Martin, David Ebert, Dmitrij Dolgušin

Collaborators

Project background

With the LHC stopped for upgrade and maintenance during 2019, CERN took the opportunity to organise one of its major Open Days events in September. At these events, members of the public are able to visit many areas that are normally restricted. Our team's responsibility was to design, deliver, and maintain the ticketing system for the Open Days. The event took place over a full weekend, and was attended by 75,000 people.

Recent progress

The project was delivered in 75 days and was maintained for three months from mid-June. The system was made available in English and French, and it had a multi-layer architecture. Thanks to the cutting-edge technologies used, adherence to coding standards, and the fine-tuning possibilities offered by the various layers, we were able to successfully deliver a highly available and scalable system.

We used an Angular framework, with Angular material design on the front-end application layer and a REST API based on the Java Spring boot application as the back-end layer. These were run in containers, hosted in a Kubernetes environment. Each of the components were individually scalable based on the load, as was the Oracle Autonomous Transaction Processing database. All the components were hosted on the Oracle cloud, using cloud-native services like a load balancer, a container engine for Kubernetes, and Oracle Analytics Cloud. The system was stress tested and was capable of handling 20,000 parallel users across a period of six minutes.

The reservation system played an important role in the organisation of this large event.

Next steps

The project came to a successful close on 16 September 2019. As part of the project, we tested and evaluated the capabilities of the Oracle Cloud, which will serve as the foundation for a planned upcoming project on disaster recovery.

 

The project members would also like to thank the following people at CERN for their assistance:

  • Sébastien Masson, Manuel Martin Marquez, Aimilios Tsouvelekakis and Aparicio Cotarelo for their consultation services.
  • Francois Briard, the project owner.
  • Tobias Betz, for his assistance with the mail templates and the countdown timer.
  • Liviu Valsan, Sebastian Lopienski, and Jose Carlos Luna Duran for their assistance with security.
  • Bas Wallet and Ewa Lopienska for their work on the user interface and experience.
  • Ana Godinho, Odile Martin, Achintya Rao, and Corinne Pralavorio for their translation work.

Publications

    V. Kozlovszky, Open Days reservation system's high level overview – 2019. Databases at CERN blog. 2019. cern.ch/go/ff6k
    V. Kozlovszky, Internationalization of the 2019 Open Days reservation system. Databases at CERN blog. 2019. cern.ch/go/6qQB

Presentations

    E. Grancher, V. Kozlovszky, 100% Oracle Cloud: Registering 90,000 People for CERN Open Days (16 September). Presented at Oracle OpenWorld 2019, San Francisco, 2019. cern.ch/go/6xZZ
    E. Grancher, 11 Months with Oracle Autonomous Transaction Processing (18 September). Presented at Oracle OpenWorld 2019, San Francisco, 2019. cern.ch/go/8PQ6