Fünf Möglichkeiten, wie Sie mehr aus Ihrem CDN herausholen können
Die meisten Anbieter von Online-Inhalten nutzen ein Content Delivery Network (CDN) als Teil ihrer Auslieferungsinfrastruktur. Die klassischen Vorteile reichen von einer schnelleren und sicheren Bereitstellung bis hin zur engen Integration mit modernen Content-Management-Systemen. Log-Dateien sind hilfreich für die Abrechnung und um den Systemstatus im Auge zu behalten. Manche nutzen CDNs auch für die Authentifizierung von Abonnenten. Es gibt zahlreiche gut dokumentierte Gründe, ein CDN Teil Ihrer Auslieferungsinfrastruktur zu machen. In diesem Blogpost beschäftigen wir uns aber mit einigen weniger bekannten Vorteilen, die zur Skalierung und Verbesserung Ihres Geschäfts beitragen können:
Fortschrittliches Caching
Optimierung von Inhalten
Umfassende Sicherheit
Skalierbarkeit auf der Edge
Entscheidungsfindung durch transparente Daten
Fortschrittliches Caching
CDNs cachen in der Regel relativ einfache Daten: Bilder, JavaScript, CSS und andere Komponenten einer Webseite, die sich alle gut für das Caching eignen, da sie sich nicht oft ändern (wenn überhaupt). So werden im Grunde Elemente ohne Logik durch eine Pipeline gesendet. Außerdem können Sie damit Content dauerhaft zwischenspeichern, was Ihnen einige Vorteile wie geringere Cloud- und Egress-Kosten bringt.
Viele Inhalte lassen sich jedoch viel besser cachen, als Sie vielleicht denken: HTML-Seiten, API-Routen, GraphQL Queries – ihres Zeichens alles Dinge oder Objekte, die normalerweise als ereignisabhängig bezeichnet werden. Denken Sie an Episoden- und Showlisten, Nutzereinstellungen, Videomanifeste und API-Antworten: Alle davon bleiben unverändert, bis etwas passiert (ein Ereignis). Alles, was eine Query an eine Datenbank oder eine Art Abstraktionsschicht wie eine API sendet, lässt sich höchstwahrscheinlich cachen. Der Grund dafür ist, dass die meisten modernen CDNs es Ihnen ermöglichen, Inhalte innerhalb Ihres Netzwerks relativ schnell zu bereinigen. Mit anderen Worten: Anstatt eine Time to Live (TTL) von 30 Minuten zu vergeben, anschließend zurück zum Origin-Server zu gehen und Ihre Requests immer wieder neu zu validieren – was unnötig Ressourcen am Origin beansprucht –, können Sie Ihre Inhalte „dauerhaft“ cachen, oder zumindest so lange, bis Sie sie ablaufen lassen.
Indem Sie mehr Inhalte cachen, können Sie Ihre Kosten senken, insbesondere bei Workloads wie Datenbank-Queries, die viel Rechenleistung in Anspruch nehmen. Das liegt daran, dass Sie die Daten auf der Edge und nicht am Origin cachen.
Eine solche Strategie führt zu konstanten und weltweiten Performance-Steigerungen. Moderne CDNs können sogar bei wirklich dynamischen oder gar nicht erreichbaren Inhalten oder Website-Elementen helfen. Mithilfe eines CDNs können Sie TLS-Verbindungen näher zu Ihren Endnutzern bringen und somit die Start-up-Zeiten verkürzen. Außerdem können Sie TCP-Verbindungen zu Ihrem Origin-Server offen („hot“) halten, sodass keine Ressourcen für den Auf- und Abbau dieser Verbindungen aufgewendet werden müssen.
Optimierung von Inhalten
Vieles von dem, was Sie an Ihrem Origin-Server oder auf dem Application Layer optimieren, kann wahrscheinlich auch auf der Edge optimiert werden. Nehmen wir zum Beispiel die Bildoptimierung, eine Funktion der Fastly Edge-Cloud-Plattform: Optimierte Bilder reduzieren Ihre Storage- und Compute-Kosten. Es gibt zahlreiche Vorteile, aber ein Anwendungsfall ist die Aktualisierung und Neugestaltung der Nutzeroberfläche, ohne dass jedes benötigte Bild neu bearbeitet werden muss. Außerdem können Sie die Vorteile neuer Dateiformate wie WebP oder AVIF sofort nutzen, ohne dass Sie Ihre Anwendung mit großem technischen Aufwand umbauen müssen.
Durch die Komprimierung von HTML-, CSS- und JavaScript-Dateien können Sie sich Rechenzyklen und technische Ressourcen sparen, indem Sie das Packen und Entpacken Ihrem CDN überlassen. Außerdem lassen sich so die Vorteile neuer Komprimierungsalgorithmen wie Brotli nutzen, sobald diese auf den Markt kommen. Alles, was Sie dazu brauchen, ist ein bisschen Code auf der Edge.
Umfassende Sicherheit
CDNs eignen sich hervorragend für die Implementierung und Durchsetzung von Sicherheitsmechanismen. Sie sind riesig und darauf ausgelegt, enorme Traffic-Spitzen zu bewältigen – sowohl was legitimen Traffic wie bei Live-Sportveranstaltungen mit hohen Zuschauerzahlen angeht als auch was bösartige DDoS-Angriffe betrifft. Ebenso können Sie mithilfe von CDNs verschleiern, wo sich Ihr tatsächlicher Origin-Server oder Ihre Anwendung befindet, und so die Angriffsfläche für Hacker verringern. Sie können IP-Beschränkungen und private Netzwerkverbindungen einrichten, um den Zugriff ausschließlich auf Ihre Anwendung zu beschränken.
Content-Anbieter müssen sich gegen riesige volumetrische DDoS-Angriffe und kleinere gezielte Angriffe wie Account Takeover, Credential Stuffing und Kreditkartenbetrug schützen. Die Liste wird scheinbar jeden Tag länger. DDoS-Angriffe bewegen sich inzwischen im Multi-Terabit-Bereich – eine Größenordnung, für die die meisten Anwendungen nicht ausgelegt sind und auch nicht ausgelegt sein sollten.
CDNs sind besonders gut darin, riesige volumetrische Angriffe abzuwehren. Der Schutz vor Nutzerverhalten und neuen Bedrohungen erfordert einen differenzierteren Ansatz, bei dem Ihnen das WAF-Angebot der meisten CDNs helfen kann. In der Tat sind CDNs eine großartige Anlaufstelle, um Sicherheitsfragen zu klären. Wenn Sie zum Beispiel alles, was nicht zum Layer 7 gehört und kein HTTP oder HTTPS ist, auf der Edge speichern, erhalten Sie direkt einen beträchtlichen Schutz.
Ihr CDN ist in der Lage, Angriffe zu untersuchen, zu erkennen und zu blockieren, bevor sie Ihre Anwendung erreichen. Funktionen wie Rate Limiting ermöglichen es legitimen Nutzern, auf Ihre App zuzugreifen, während Angreifer auf der Edge blockiert werden. Die Durchsetzung von Sicherheitsrichtlinien auf der Edge spart Zeit, steigert die Performance und reduziert die Belastung Ihrer Kernanwendungen. Von der Token-Authentifizierung bis hin zum virtuellen Patching bietet die Edge ideale Voraussetzungen, um bösartigen Traffic zu erkennen und zu blockieren, bevor er sich auf wichtige Daten und Anwendungen auswirkt.
Edge Computing
Obwohl sie sich voneinander unterscheiden und unterschiedlich funktionieren, verfügen viele moderne CDNs über Edge-Computing-Funktionen. Einige basieren auf WebAssembly, andere auf Docker und wiederum andere auf sonstigen virtuellen Sandboxen. Sie kommen mit unterschiedlichen Features, Kostenmodellen und unterstützten Sprachen, und weil sie eine Vielzahl von Dingen ausführen können, ist Edge Computing eine großartige Möglichkeit zur Entwicklung und Skalierung Ihrer Microservices.
Aus diesem Grund sollten Sie Ihre Authentifizierung auf die Edge verlagern, also in die Nähe Ihrer Nutzer und weg von der Anwendung selbst. Außerdem können Sie so die Auslieferung Ihrer Inhalte je nach Region, Gerätetyp oder anderen Merkmalen anpassen. Sie können sogar personalisierte Nutzererlebnisse bieten und Versuche wie komplexe A/B-Tests durchführen. Und wenn Sie neue Technologien wie WebAssembly auf der Edge einsetzen, können Sie all dies in einer sicheren, performanten Sandbox-Umgebung tun. So können Entwickler Anwendungen in ihren bevorzugten Sprachen erstellen – ob JavaScript, Golang, Rust oder andere –, was wiederum zu höherer Produktivität, besseren Produkten und mehr Zufriedenheit bei der Arbeit führt!
Transparenz
Zu guter Letzt wäre da noch die Transparenz. Ihr CDN verfügt von Natur aus über Unmengen von Daten. Logs und Statistiken können Ihnen den Geschäftsalltag erleichtern, insbesondere wenn sie in Echtzeit verfügbar sind. (Sie sollten sich mit nichts Geringerem als der Echtzeitverfügbarkeit zufrieden geben, denn nur so können Sie globale Vorfälle oder lokale Probleme erkennen und darauf reagieren.)
Analysieren Sie historische Daten, um bessere architektonische Entscheidungen für zukünftige Erweiterungen und Verbesserungen zu treffen. Wenn Sie Experimente durchführen, können Sie anhand der Log-Daten feststellen, ob Ihre Ergebnisse richtig waren oder ob Sie einen anderen Weg einschlagen sollten.
CDN-Logs können zur Kostensenkung beitragen, indem sie Ihnen Bereiche mit unzureichender Caching- oder Optimierungsstrategie aufzeigen. Sie können Ihnen dabei helfen, neue und effektive Wege aufzudecken, wie Menschen versuchen, Ihre Anwendungen zu missbrauchen, sodass Sie fundierte Entscheidungen treffen können. Echtzeit-Logs helfen Ihnen dabei, Ausfälle zu beheben und kostspielige Ausfallzeiten, die die Kundenverfügbarkeit Ihrer Anwendung beeinträchtigen, zu vermeiden. Eine zuverlässige Anwendung stärkt auch den Ruf Ihrer Marke.
Zum Abschluss möchten wir Sie daran erinnern, dass CDNs über engagierte Teams von Netzwerkspezialisten, automatisierte Tools und redundante Netzwerke verfügen. CDNs können für ein optimiertes Routing sorgen und vor Dingen wie den Alltagsproblemen des Internets, DDoS-Angriffen, kostspieligen Ausfällen und Ausfallzeiten schützen. Dies führt nicht nur zu einem besseren Erlebnis für Sie, sondern auch für Ihre Besucher.
Sehen Sie sich hier Chris Buckleys Vortrag zu diesen Themen auf dem Content Delivery Summit 2022 in voller Länge an.