Hosting the Madness: Hoe Stone de websites en applicaties van Tomorrowland recht hield

Sinds eind 2012 is Stone hosting partner van ID&T België en Tomorrowland. De Symfony API, de apps, de preregistratie, de Drupal website en ticket activaties werden door ons gehost. We haalden alle tools boven om de sites online en performant te houden.

Net geen 10 Miljoen pageviews tijdens het festivalweekend en net geen 5 miljoen bezoekers op de website. Voor een website is dit: Madness. Ter vergelijking: het andere grote belgische festival Rock Werchter kreeg 110.000 bezoekers op de eerste festivaldag. Het bereik van tomorrowland is dus 10x dit van Rock Werchter en wellicht meer indien we de twitter, facebook en youtube stats vergelijken. Zelfs de grote elektronische dancefestivals als Electric Daisy Carnival en Ultra verbleken bij de cijfers van tomorrowland.

Google Stats tomorrowland.com:

TML bezoeken 2013

Aantal volgers op twitter:

Tomorrowland Twitter followers comparison

It really was Madness!

We hebben het dan niet eens over de mobile apps en het verkeer op de website van het Amerikaanse broertje Tomorrowworld.

Om de piek te realiseren werden de websites en applicaties geclustered over onze datacentra in Diegem en Antwerpen, dit liet ons toe capaciteit te spreiden én ervoor te zorgen dat de websites en applicaties ten allen tijde bereikbaar zou blijven indien er zich een probleem zou voordoen op datacenter niveau.

Projecten van dit kaliber zijn normaal enkel weggelegd voor de Amazons, Googles en Microsofts van deze wereld. We slaagden er in als lokale speler de nodige schaal en internationale footprint te bieden voor dit project en gecombineerd met onze persoonlijke,  lokale ondersteuning was dit doorslaggevend voor ID&T om voor ons te kiezen.

Enkele uitdagingen in dit project:

  • Hoe kunnen we anticiperen op 3 miljoen mensen die één van de 180.000 tickets willen bemachtigen?
  • Hoe kunnen we vlot 1 miljoen preregistratie mails binnen het uur verweken?
  • Hoe zorgen we ervoor dat de website te allen tijde snel en responsief blijft, overal te wereld?
  • Hoe werken we een oplossing uit die op kritieke momenten NIET offline kan gaan?

Testen, testen en testen

Voorafgaand aan elke fase in de cyclus van het festival werd elk onderdeel door ons team grondig geloadtest, we simuleerden het verwachtte aantal bezoekers en op basis van onze feedback kon Nascom, het web agency dat de website bouwde, optimaliseringen doorvoeren op code niveau en waren we bugs die voor performance problemen kunnen zorgen steeds een stapje voor. Elk onderdeel werd grondig getest: de preregistratie formulieren, de social en app API, de Drupal website en de formulieren die instaan voor de activatie van de bandjes. Onze expertise werd door ID&T ook ingezet om problemen met aan tomorrowland gebonden applicaties bij derde partijen op te lossen. Overleg met ID&T, Nascom en andere stakeholders was een belangrijke factor die bijdroeg aan een technisch optimale website en applicaties. Nascom werd ook voorzien van een staging omgeving en de nodige tools om zelf releases te doen op het platform (via Capistrano), al gebeurden deze deploy momenten in overleg. We volgden het project op de voet en waren steeds stand by op de kritieke momenten.

Content Delivery Network (CDN) en caching strategie

Gezien het enorme internationale karakter van Tomorrowland was het belangrijk om de content zo dicht mogelijk bij de eindgebruiker te brengen, dankzij ons lidmaadschap in de Onapp federatie hebben wij toegang tot meer dan 160 locaties ter wereld waar wij content ter beschikking kunnen stellen. Voor bezoekers uit het buitenland werd de website steeds geserveerd door een partner in de CDN federatie die zich het dichtst bij de bezoeker bevindt, resultaat: snelle laadtijden voor de eindgeberuiker én een ontlasting van het netwerk waar de applicaties zelf draaien. Zelf voorzagen we de nodige capaciteit in Brussel en Antwerpen om zo ook de Belgen een optimale site beleving te bezorgen. We testten alle locaties waar we toegang tot hadden en beperkten ons uiteindelijk tot de eindpunten die voldoende bandbreedte ter beschikking hadden voor de verwachte bezoekers. Onze internationale partner in dit verhaal stond ons hierbij bij en gaf ons inzage in de SLA en performance metrics van de partners in onze federatie. Als Belgische speler kunnen we dankzij deze federatie een gigantische internationale schaal aanbieden.

Verkeer in Mbit op de CDN

Content Delivery Network (CDN) traffic

Het uitwerken van een caching strategie was uiteindelijk de moeilijkste hersenbreker in het project: wanneer een pagina geupdated wordt moet dit snel verspreid kunnen worden. TTL en caching waarden werden zorgvuldig gekozen en indien nodig werd de CDN API aangesproken om de caches snel te flushen. Daarnaast mogen sommige pagina’s niet gecached worden (zoals het activeren van de bandjes en de respons van het formulier) en diende er een lijst met uitsluitingen opgesteld te worden. Deze elementen van de site dienen immers verwerkt te worden door de servers in Brussel en Antwerpen.

Caching werd gebruikt op verschillende niveau’s: MemCached voor database caching, PHP-APC voor opcode caching, Varnish voor het cachen van de API en website en ten slotte houden de CDN edge servers ook voor langere tijd een kopie bij van de statische elementen.

Een echt flexibel en schaalbaar cloud platform

Ons cloud platform heeft als bijkomende troef dat – mits goed opgezet – we applicaties en server clusters up en down kunnen schalen naar gelang de vraag. Op piekmomenten zoals bij de preregistratie werd er automatisch geschaald tot 24 front end servers en een handvol servers voor database en mail diensten. In ‘dalperiodes’ gaat de setup automatisch terug naar de minimale noodzakelijke setup. Dit zorgt ervoor dat ID&T de kosten onder controle kan houden er niet het gehele jaar de capaciteit voor 2 miljoen bezoekers per dag afgenomen dient te worden. Ook dient men zich geen zorgen te maken indien de pieken groter zijn dan verwacht. Zo was dit jaar het aantal bezoekers van de website op festvaldag enkele factoren hoger dan vorig jaar en volgde er een onverwachte extra piek toen de youtube livestream er door de storm even uit lag. We vingen dit perfect op.

Op naar tomorrowworld!

Oh, een een filmpje met meer info is te vinden op de website van onze partner Onapp.

Ook een uitdagend webproject in de pijplijn?

Contacteer ons voor een offerte en advies op maat