Seit dem Siegeszug des Cloud Computing profitieren Unternehmen von einer zuvor nicht erreichten Geschwindigkeit, Skalierbarkeit, Performance und Flexibilität. Cloud Computing hat Unternehmen dabei geholfen, ihre Dienste ohne Ausfälle bereitzustellen und gleichzeitig Komplexität zu reduzieren, agiler zu handeln und Kosten zu senken.
Doch die Grenzen zentralisierter Cloud-Computing-Architekturen werden aufgrund wachsender Kundenanforderungen immer offensichtlicher – vor allem was die globale Bereitstellung von Inhalten betrifft.
Erfolgreiche Marken kommunizieren heute im Internet mit ihren Kunden auf eine Weise, wie sie noch vor wenigen Jahren undenkbar war. Wie und wo Inhalte konsumiert werden und in welchem Ausmaß man sich mit ihnen beschäftigt, das alles hat sich grundlegend verändert. Streaming, Live-Videos und andere dynamische und On-Demand-Inhalte, sind in den letzten Jahren immer beliebter geworden. Vorausdenkende Unternehmen haben dies erkannt und rechtzeitig in ihren IT-Strategien berücksichtigt.
Herkömmliche Cloud-Computing-Architekturen versagen bei der heute gängigen Bereitstellung von Inhalten. Sie bieten weder optimale Kosteneffizienz, Zuverlässigkeit noch Performance. Und genau hier kann ein Content Delivery Network (CDN) eine entscheidende Rolle spielen.
Was ist ein Content Delivery Network?
Ein CDN ist ein geografisch verteiltes Netzwerk von Datenzentren mit Proxy-Servern, die zusammen eine hohe Rechenleistung bereitstellen und es Unternehmen ermöglichen, jede Form von Inhalten näher – und damit schneller – an den Endnutzer zu bringen. Unternehmen sind sich heute der Problematik von Latenzen bewusst: Es wird geschätzt, dass bereits eine Verzögerung von nur einer Sekunde beim Seitenaufruf zu einer 7-prozentigen Verringerung der Konversionsrate führen kann, und 40% der Nutzer brechen den Besuch einer Website komplett ab, wenn diese mehr als drei Sekunden zum Laden benötigt. CDN-Strategien sind daher inzwischen sehr beliebt, vor allem bei hohem Umsatzvolumen auf globaler Ebene.
Die Vorteile von Multi-CDN
Unternehmen können mit einem Multi-CDN-Ansatz zwei oder mehr Provider kombinieren, um ein großes Netzwerk zu schaffen, das ein globales Publikum bedient. Multi-CDN bedeutet, dass Unternehmen Zugriff auf die geballte Leistung mehrerer Provider in jeder geografischen Region erhalten. Dies führt zu reduziertem Buffering, größerer Sicherheit und mehr Skalierbarkeit. Dabei sollten Sie bei der Implementierung einer Multi-CDN-Strategie jedoch ein paar wichtige Punkte beachten.
Inhalte nach Typ gruppieren
Content-Partitioning ist ein beliebter Ansatz, bei dem Inhalte nach Typ gruppiert (HTML, JS, CSS, Bilder, Video, API usw.) und jeweils von einem bestimmten CDN bereitgestellt werden. Die statische Natur und festen Größen von Assets wie CSS, JS und Bildern macht es einfach, sie in eine Multi-CDN-Architektur zu verschieben. So können CDNs auch anhand bestimmter Funktionen, wie Instant Purge für HTML, gewählt werden. Content-Partitioning vereinfacht insgesamt also die Entscheidungsfindung bei der Verteilung des Traffics.
Entwickeln Sie einheitliche Header für die Fehlerbehebung
Konsistente Header helfen bei der Diagnose von Problemen. Indem Sie Debug-Header standardisieren, ermöglichen Sie auch eine bessere Kollaboration zwischen Ihren CDNs. Dabei sollten Sie ein paar wichtige Fragen im Hinterkopf behalten: Wie lautet zum Beispiel die Request-ID? War die Anfrage ein Cache-Treffer oder ein Miss? Wie lange hat die Anfrage gedauert, nachdem der erste CDN-Server sie erhielt? Dies sind alles Fragen, auf die Sie schnell und unkompliziert Antworten erhalten sollten.
Führen Sie ein konsistentes Hashing Ihrer Daten ein
Hash-Funktionen werden verwendet, um Daten beliebiger Größe in Hash-Werte der immer gleichen Größe umzurechnen. Die dazugehörigen Hash-Tabellen werden verwendet, um auf diese Daten schnell und in einem konstanten Zeitraum pro Abruf zuzugreifen. Das kontinuierliche Hashen Ihrer Daten macht die sehr dynamische Entscheidung, welches CDN welches Objekt ausliefert, so deterministisch wie möglich. Dabei werden gleichzeitig die Cache-Trefferraten über alle CDNs hinweg erhöht. Wenn Sie dagegen nach dem Zufallsprinzip auf DNS-Level entscheiden lassen, wie z.B. 5 % Ihres Datenverkehrs ausgeliefert werden, optimieren Sie schlussendlich weder die Performance für Ihre Nutzer, noch sparen Sie an Origin-Egress-Bandbreite.
Etablieren Sie klare Monitoring-Parameter
Mit einer Multi-CDN-Strategie können Sie die Performance verbessern, indem Sie das optimale CDN für die Bereitstellung von Inhalten auswählen. Dazu benötigen Sie jedoch einen Überblick über die Performance der einzelnen CDNs. Die Verwendung konsistenter Monitoring-Parameter erleichtert und beschleunigt den Vergleich der CDN-Performance zwischen den Anbietern und ermöglicht so die Feinabstimmung Ihrer Multi-CDN-Implementierung. Legen Sie diese Kriterien über Ihre RUM-Provider hinweg fest und überwachen Sie alle Ihre CDNs konsistent, wo immer dies möglich ist. Inkonsistente Monitoring-Strategien führen aufgrund von Unterschieden in der Objektgröße, inkongruenten Caching-Headern, inkonsistenter Testhäufigkeit, nicht abgestimmten DNS-TTLs und anderen unerwünschten Resultaten zu unübersichtlichen Ergebnissen.
Machen Sie Gebrauch von Logging, Monitoring und Drittanbieter-Reporting
Nicht alle CDNs ermöglichen einen Echtzeit-Einblick in Ihren Traffic, diese Funktion ist in einem Multi-CDN-Szenario jedoch entscheidend. Das Streaming von Protokollen ist eine großartige Möglichkeit, um sich einen Überblick über die Muster des Datentraffic Ihrer Endnutzer zu verschaffen und diese zu verstehen. Durch die Integration von Echtzeit-Protokollen, Produkten wie Splunk, Sumo Logic, Azure Data Explorer (ADX), BigQuery und ähnlichen Tools erhalten Sie Einblicke, die es bisher bei “Black-Box”-CDNs (die Protokolle erst Minuten oder sogar Stunden später zur Verfügung stellen) nicht gab. End-to-End-Monitoring, einschließlich des Browsers/Players des Nutzers, der CDNs und des Origins, verschafft Ihnen einen größeren Kontext, um Probleme zu erkennen, bevor sie katastrophal werden.
Verwenden Sie multi-autoritative DNS-Anbieter
Ein einziger autoritativer DNS-Provider kann zu einem Single Point of Failure in Ihrem Infrastruktur-Stack führen. Es ist daher eine branchenweit bewährte Praxis, zwei autoritative Provider einzusetzen, die einen Anycast-basierten Ansatz verwenden. Dies ist besonders in Multi-CDN-Architekturen wichtig, da so sichergestellt wird, dass Sie bei DDoS-Angriffen auf Ihren DNS-Provider nicht mit null Nameservern dastehen, um die Anfragen Ihrer Kunden zu beantworten.
Von fortschrittliche Features in der gesamten Bereitstellung profitieren
Verschiedene Organisationen haben je nach individuellen Bedürfnissen natürlich unterschiedliche Ansprüche an die Funktionen ihres CDN-Setups. Einige davon sind jedoch grundlegender Natur und sollten für jeden Kunden verfügbar sein. Dazu gehören CDN-Nutzungsstatistiken (möglichst in Echtzeit), FTP-Dateitransfer und Cache Purging (bedarfsgesteuertes Zurücksetzen des Delivery Node Cache). Um mehrere CDNs gemeinsam effektiv zu nutzen, sollten Sie idealerweise ein paralleles Toolset von einem Anbieter zum anderen verwenden. Betreiber stimmen ihre Multi-CDN-Implementierung in der Regel auf den kleinsten gemeinsamen Nenner ab – wenn Sie beispielsweise drei leistungsstarke CDNs, zusätzlich aber auch noch ein eher rudimentäres CDN einsetzen, welches lediglich statisches HTML unterstützt, können Sie in Ihrer gesamten Multi-CDN-Architektur keine komplexen Features nutzen. Wenn Sie jedoch das Basis-CDN gegen ein CDN mit mehr Funktionen austauschen, können Sie von fortschrittlichen Features in Ihrer gesamten Bereitstellung profitieren.
Es sind die Inhalte, die viele Unternehmen zum Erfolg führen. Nutzer sind heute wählerischer, das Internet ist komplexer geworden und Content-Delivery-Plattformen spezialisieren sich immer mehr. Angesichts dieser Tatsachen ist es jetzt an der Zeit, Ihre CDN-Strategie zu überdenken. Mit der Berücksichtigung der oben genannten Punkte sollten Sie in der Lage sein, sich für die richtige Kombination von Anbietern zu entscheiden, sodass Ihr Unternehmen kontinuierlich hochwertige Inhalte auszuliefern und Ihren Mitbewerbern einen Schritt voraus ist.
Gonzalo, VP of Strategic Projects bei Fastly, https://www.fastly.com/