Content Delivery Networks im Überblick

Content Delivery Networks im Überblick

Die Nutzung und Entwicklung von Online-Diensten mag heute trivial erscheinen. Hinter den Kulissen gibt es viele Technologien, die nicht immer die Wertschätzung erhalten, die sie verdienen. Allein die grundlegende Aufgabe, Daten über das Netz zu senden, ist schon erstaunlich.

Da die Übertragung von Daten letztlich durch die Gesetze der Physik eingeschränkt ist, macht es einen spürbaren Unterschied, ob ein Datenpaket um die halbe Welt geschickt wird oder von nebenan. Das ist der Kern dessen, wofür Content Delivery Networks, kurz CDNs, entwickelt wurden. Ein CDN-Betreiber ist ein Unternehmen mit Servern rund um den Globus, der Daten weiterleitet, so dass die Hin- und Rückwege von Netzwerkanfragen und -antworten optimiert werden.

Neben der Bereitstellung von Daten vom bestmöglichen physischen Standort für jeden Nutzer hat ein CDN noch weitere Funktionen. Da die Betreiber Experten für die Übertragung von Daten in großen Mengen sind, können Sie ein weltweites Publikum von Ihrer Garage aus erreichen, ohne die Bank zu überlasten. Eine weitere gemeinsame Aufgabe ist die Optimierung der Daten selbst. Moderne CDNs können Bilder und andere Daten im laufenden Betrieb komprimieren und so die Leistung weiter verbessern, indem sie die gesamte Nutzlast, die über die Leitungen gesendet wird, minimieren.

Sicherheit und Verfügbarkeit ist ein weiterer nicht zu vernachlässigender Aspekt. Es gibt viele böswillige Aktivitäten im Internet, vom opportunistischen Anklopfen bis hin zu organisierten Angriffen gegen bestimmte Organisationen. Das Hosting eines Dienstes in einem Content-Delivery-Network kann auch einen gewissen Schutz vor diesen Angriffen bieten. Aufgrund ihrer enormen Größe sind viele CDN-Anbieter in der Lage, DDoS-Angriffe abzuschwächen und eine zusätzliche Sicherheitsebene in Form einer Web Application Firewall bereitzustellen, die vor Angriffen selbst schützen kann.

Bereitsstellung eines Content Delivery Network

In vielen Fällen ist die Einrichtung eines Content Delivery Network keine schwierige Aufgabe. Da ein CDN im Wesentlichen eine Schicht zwischen Ihrem Dienst und den Nutzern darstellt, kann die vorhandene Infrastruktur oft weitgehend unverändert bleiben. Sie benötigen lediglich eine Netzwerkkonfiguration und eine zusätzliche Logik in Ihrer Anwendung, um die Bereinigung veralteter Daten zu handhaben.

Der schwierigste Teil ist die Bereinigung von Datenkopien auf POPs (Points of Presence) bei Änderungen. Da der Ursprung aller Daten Ihr Dienst ist, sollten Sie bei der Bereinigung nicht zu großzügig sein. Denn sonst gehen Ihnen die Vorteile verloren, da die Daten häufig von Ihren Servern geladen werden müssen, auf denen die Anwendung läuft. Die Verwaltung der Bereitstellung neuer Versionen, um sicherzustellen, dass alle Assets (Bilder, Stile, JavaScript-Code usw.) aktualisiert werden, muss ebenfalls in Ihrer Bereitstellungspipeline berücksichtigt werden.

Bei komplexen Anwendungen oder einer unzureichend konzipierten Architektur sind die oben genannten Punkte möglicherweise komplexer, als zunächst angenommen, was zu unerwarteten und schwer nachzuverfolgenden Problemfällen bei Benutzern an verschiedenen Standorten führt. Die Verwendung eines VPN-Dienstes zur Vortäuschung des physischen Standorts kann bei der Fehlersuche hilfreich sein, ist aber möglicherweise nicht detailliert genug.

Die gute Nachricht für Ibexa-Kunden ist, dass wir dies bereits bedacht haben. Das System ist von Haus aus in der Lage, Bits und Teile aus den Caches automatisch zu löschen und verfügt über eine API, die die Integration in praktisch jedes CDN auf dem Markt ermöglicht. Für ein optimales Erlebnis sollte Ibexa Cloud in Betracht gezogen werden, das mit einer Integration in Fastly, einem der führenden CDNs, geliefert wird. Der Bereitstellungsprozess von Ibexa Cloud stellt automatisch sicher, dass die neuesten Assets an die Nutzer auf der ganzen Welt geliefert werden.

Was steht den CDNs bevor?

CDNs sind seit Jahren, ja sogar Jahrzehnten, ein fester Bestandteil der Webentwicklung. Es ist also nicht zu erwarten, dass es in diesem Bereich eine starke Expansion geben wird. Bei ressourcenintensiven Nicht-Web-Workloads werden wir jedoch wahrscheinlich eine stärkere Akzeptanz erleben. Beispielsweise stellen Streaming-Unternehmen wie Netflix bereits ihre eigenen Server mit Kopien der Medien direkt in die Netze von Teleoperatoren ein. Wenn Sie also Ihre Lieblingsserie sehen, kann es sein, dass das Video gar nicht über das öffentliche Internet läuft.

Die Technologielandschaft entwickelt sich ständig weiter, und Content-Delivery-Netze bilden da keine Ausnahme. Ein neuer Trend, den sich CDN-Anbieter zunutze machen, ist Edge Computing. Dieser Begriff ist ein enger Verwandter des Begriffs Cloud Computing, an den wir alle gewöhnt sind. Beim Edge Computing werden die Aufgaben nicht auf großen Serverfarmen, sondern in kleineren Umgebungen in der Nähe der Endnutzer ausgeführt. Dort befinden sich bereits CDNs, was somit durchaus sinnig ist.

Es ist wichtig, dass sich Edge und Cloud ergänzen. Aufgaben wie die Datenspeicherung werden am besten von großen Rechenzentren ausgeführt, um die Kosten niedrig zu halten. Für Aufgaben, bei denen geringe Latenzzeiten entscheidend sind, kann Edge Computing einen Vorteil bieten. Ein Beispiel hierfür könnte die Signalisierung für autonome Fahrzeuge sein, oder vielleicht das Streaming von Spielen, die über den Mobilfunkmast auf Ihr Telefon laufen, um die Leistung und die Akkulaufzeit zu optimieren.

Aber auch über diese futuristischen Anwendungsfälle hinaus kann Edge Computing nützlich sein. Die Verlagerung eines Teils der Logik für die Personalisierung oder für lokale Werbeaktionen von der Serverfarm könnte sehr sinnvoll sein. Da es sich dabei um eine Erweiterung der CDN-Architektur handelt, die der zentralen Anwendung vorgelagert ist, ist keine vollständige Neuimplementierung von Grund auf erforderlich.

 

Foto von NASA auf Unsplash

Weitere Insights