Von der Firma Mika timing haben wir vor einigen Wochen den Auftrag bekommen eine Internetplattform zur Bereitstellung von Ergebnissen für Laufveranstaltungen zu bauen und dann auch zu betreiben. Nach den ersten Generalproben beim Queens Half und dem Chicago Marathon, hat die Plattform an diesem Sonntag die Belastungsprobe des New York Marathons ohne Probleme bestanden. Während vor Ort in New York fast 2 Millionen Besucher den Marathon verfolgt haben, waren online die realtime Zahlen aller 38.000 Teilnehmer im Athlete Tracker abrufbar.
Das System verwendet als Backend eine geclusterte MySQL Datenbank, in die alle Zeiten und Platzierungen aus New York live eingespielt wurden. Die aus dem Internet eingehenden Clientanfragen werden mit einem LVS Loadbalancer, natürlich ebenfalls geclustert, auf mehrere Webserver verteilt. Dort läuft die in PHP programmierte Anwendung unter dem lighttpd Webserver. Die Applikation befragt einen, lokal auf den Webservern installierten MySQL Datenbankserver, der sich mit dem zentralen Datenbankserver repliziert. Um eine noch bessere Performance zu erreichen, haben wir bei der Programmierung versucht viele Funktionen, die normalerweise von den Application Servern oder sogar von der Datenbank ausgeführt werden, mit AJAX auf den Client zu verlagern. Beispielsweise wird eine Änderung der Sortierreihenfolge nur lokal ausgeführt und verursacht so keine Last innerhalb der Plattform. Da auch kein reload der gesamten Seite notwendig ist, konnten wir so auch Bandbreite einsparen.
Da Mika timing alle großen Laufveranstaltungen weltweit betreut, wird dieses System in Zukunft neben New York, auch bei den Marathons in London, Berlin, Chicago und Boston zum Einsatz kommen. An dieser Stelle vielen Dank an Christian, Michael und Gerd, die sich wirklich alle Beine für das Projekt ausgerissen haben.
Happy New Year 2023
"Alles, was anders ist, ist gut." So sagt es zumindest Phil Conners im 90er-Jahre Klassiker "Und täglich grüßt das Murmeltier". Wenn ich ehrlich bin, hätte ich das Anfang dieses Jahres auch gedacht, denn es schien als würden wir COVID-19 langsam in den Griff kriegen...
Der Link auf den Athlete Tracker funktioniert inzwischen natürlich nicht mehr.