Content Delivery Networks im E-Commerce

23.02.2022
extendedLogo

Je größer der Onlineshop, desto größer ist meistens auch die Anzahl der integrierten Text- und Bilddateien. Das kann die Shop-Performance negativ beeinflussen. Die Nutzung eines Content Delivery Networks bietet unter Umständen eine Lösung.

Wer einen Onlineshop mit einem großen Produktsortiment betreibt, verwendet in der Regel auch eine große Anzahl an Text- und Bilddateien im Shopsystem. So sind zum Beispiel diverse Produktbeschreibungen und -fotos darin enthalten, um den potenziellen Käufern möglichst viele Informationen zum Produkt bereitzustellen.

Der Nachteil daran ist, dass gerade der Abruf von Bilddateien oft viel Bandbreite erfordert. Das kann unter Umständen negative Auswirkungen auf die Performance des Shops haben. Daher beschäftigen wir uns in diesem Beitrag mit Content Delivery Networks und den Vor- und Nachteilen, die ihr Einsatz im E-Commerce mit sich bringt.

Was ist ein CDN?

Ein Content Delivery Network (im Folgenden verwenden wir die Kurzform “CDN”) ist ein Netzwerk aus miteinander verbundenen Servern, die über unterschiedliche regionale Standorte, sogenannte “PoPs (Points of Presence)”, verteilt sind.

Ein solches Netzwerk eignet sich zum Beispiel dazu, mediale Inhalte wie große Bild- oder Videodateien schnell an den Browser des Endnutzers auszuliefern - egal aus welchem Teil der Welt darauf zugegriffen wird. Auch bei Lastspitzen stellt ein CDN aufgrund skalierender Speicherkapazitäten und geringerer Bandbreitenauslastung sicher, dass der Content erreichbar bleibt und performant ausgespielt wird.

Vom Endnutzer oftmals unbemerkt, sind CDNs längst Bestandteil unseres Alltags. So nutzen zum Beispiel Streaming-Dienste, Social-Media-Plattformen, Software-Provider oder Webseitenbetreiber ein CDN, um Inhalte ohne Verzögerung über Server auszuspielen, die sich in der physischen Nähe des Endnutzers befinden.

Wie funktioniert ein CDN?

Wer auf ein CDN zurückgreift, legt die Inhalte seiner Webanwendung zunächst auf einem Ursprungsserver ab. Diese Inhalte werden dann auf eine Vielzahl an geografisch verteilten Replica-Servern distribuiert. Wie ihr Name schon sagt, enthalten diese Replica-Server also Kopien der Inhalte, die auf dem Ursprungsserver liegen. Abhängig davon, aus welcher Region ein Client einen Request sendet, wird über ein Request-Routing-System ein passender Replica-Server ausgewählt. Über diesen werden die Inhalte dann abgerufen und an den Client ausgespielt.

Welcher Replica-Server ausgewählt wird, entscheidet dabei das sogenannte Accounting-System. Dieses prüft neben der Auslastung der Replica-Server und der geografischen Nähe nämlich auch Faktoren wie die Qualität der Netzwerkverbindung zwischen Server und Client. Abhängig vom jeweiligen CDN-Anbieter kann sich der genaue Prüfungsprozess jedoch unterschiedlich gestalten.

Wurde mithilfe des Request-Routings-Systems ein geeigneter Replica-Server ausgewählt, wird der Request dorthin umgeleitet. DNS-basiertes Request Routing ist die am häufigsten eingesetzte Methode der Weiterleitung. Der Request wird dabei an einen DNS-Server, der im Regelfall vom Internet-Provider des Endnutzers bereitgestellt wird, beantwortet. Auf diese Weise kann die ungefähre Geo-Position des Endnutzers bestimmt werden.

Alternativ kann die Weiterleitung mithilfe eines HTTP-Statuscodes 302 auch serverseitig erfolgen. In diesem Fall gibt der Ursprungsserver nach Eingang eines Requests den HTTP-Statuscode an den Client zurück und teilt diesem so einen Replica-Server zu. Der Client führt nun automatisch einen weiteren Request an den zugewiesenen Replica-Server durch.

Beispielhafter Aufbau eines Content Delivery NetworksBeispielhafter Aufbau eines Content Delivery Networks I Grafik: maxcluster

Vorteile von CDNs

Wer sich dafür entscheidet, ein CDN zu verwenden, kann häufig von einigen der folgenden Aspekte profitieren.

Schnelle Auslieferung von Daten

Bei eingehenden Requests werden statische Ressourcen wie Bilder, Videos, Dokumente oder HTML-Seiten direkt vom zugeordneten Replica-Server an den Client ausgeliefert. Dabei entscheiden Sie als Shopbetreiber selbst, welche Elemente Ihres Shops Sie vom Webserver in das CDN auslagern möchten. Gerade die Auslieferung großer Mediendateien über das CDN sorgt für eine Entlastung des Webservers und führt beim Endnutzer zu schnelleren Ladezeiten.

Auch die geografische Entfernung zwischen Server und Client sowie die Qualität der Netzwerkverbindung sind von Relevanz für die Ladezeit. Greift beispielsweise ein Nutzer aus den USA auf eine Webseite zu, die auf einem Server in Deutschland gehostet ist, muss er aufgrund der Entfernung längere Ladezeiten in Kauf nehmen.

Werden Teile der Webseite hingegen in ein CDN ausgelagert, werden die entsprechenden Inhalte stattdessen von einem Replica-Server ausgeliefert, der sich in der Nähe des Clients befindet. Auf diese Weise verkürzt sich die Ladezeit teilweise erheblich.

Globale Verfügbarkeit und Redundanz

Auch bei hohem Traffic bleibt ein Onlineshop unter Einsatz eines CDNs für den Endnutzer erreichbar. Das CDN ist nämlich in der Lage, großen Datenverkehr so zu verteilen, dass keine Performance-Engpässe entstehen.

Aufgrund der weitläufigen geografischen Verteilung ist ein CDN zudem weniger anfällig für Hardware-Ausfälle. Kommt es jedoch zu einem Ausfall des Servers, funktioniert trotz CDN spätestens bei der Ausführung des Checkouts auch der Shop nicht mehr.

Geringerer Ressourcenbedarf

Die Nutzung eines CDNs reduziert die Bandbreite Ihrer Server. Betreiben Sie eine eigene Server-Infrastruktur, wird diese durch die Verringerung der Auslastung geschont. Das kann sich positiv auf die Lebensdauer auswirken. Arbeiten Sie hingegen mit einem Hosting-Provider zusammen, reduzieren Sie durch die Nutzung eines CDNs Ihren Bedarf an Ressourcen. Dadurch entstehen geringere Hosting-Kosten.

Höherer Schutz vor DDoS-Angriffen

Das Request-Routing-System eines CDNs kann einen “natürlichen” Schutz gegen Cyber-Attacken wie DDoS-Angriffe oder webbasierte Exploits darstellen. Dies gilt jedoch nur für CDNs, die dem Webserver vorgeschaltet werden. Da eingehende Requests hier direkt umgeleitet werden, ist der Ursprungsserver für Angreifer schwerer zu erreichen. Bei klassischen CDNs hingegen werden nur die Inhalte ausgeliefert, während der Request direkt zum Ursprungsserver geleitet wird.

Da die Anzahl der Cyber-Attacken weltweit zunimmt, treffen viele CDN-Provider zudem umfangreiche Sicherheitsmaßnahmen, um Ihre Daten bestmöglich zu schützen. Diese tiefergehenden Schutzfunktionen werden in den meisten Fällen allerdings nur gegen Aufpreis angeboten und müssen zudem individuell konfiguriert werden.

Nachteile von CDNs

Obwohl ein CDN viele Vorteile mit sich bringt, können durch die Verwendung auch Defizite entstehen. Ob ein oder mehrere Aspekte eines CDNs zum Nachteil werden, ist in der Regel von den individuellen Anforderungen und Metriken Ihres Onlineshops abhängig.

CDN-Qualität

Bei der Wahl eines CDNs sollte die Geschwindigkeit überprüft werden. Verfügt ein CDN über eine schlechte Bandbreite, werden Inhalte letztendlich langsamer ausgeliefert, als wenn sie direkt vom Ursprungsserver kommen. Das gilt auch in Fällen, in denen sich ein Client in der geografischen Nähe eines Replica-Servers befindet. Insbesondere bei einem guten Hosting-Setup kann sich ein CDN ebenfalls negativ auf die Performance auswirken.

Zudem stellen CDNs einen zusätzlichen “Point of Failure” dar: Wenn das CDN selbst ausfällt oder eine Störung hat, ist auch Ihre Webanwendung nicht mehr erreichbar.

Technischer Aufwand

Bevor Sie sich für die Verwendung eines CDNs entscheiden, sollten Sie prüfen, welche Anforderungen Sie in Bezug auf Ihren Onlineshop mitbringen und ob die Leistungen des CDN-Providers Ihrer Wahl genügend davon abdecken.

Die Inbetriebnahme eines CDNs ist mit hohem technischen Aufwand verbunden und erfordert das entsprechende Know-how. Da die Daten nicht mehr nur auf einem zentralen Server liegen, verursacht auch der laufende Betrieb mehr Aufwand.

Weniger Datenkontrolle

Wenn Sie sich für die Nutzung eines CDNs entscheiden, verlieren Sie auch die alleinige Kontrolle über die Daten, die Sie im Kontext Ihrer Webanwendung bereitstellen. Das liegt zum einen darin begründet, dass sich eine Vielzahl der zur Verfügung gestellten Replica-Server im Ausland befindet und Ihre Daten dorthin übermittelt werden. Zum anderen wird die IP-Adresse Ihrer Shop-Besucher an den jeweiligen Replica-Server übertragen.

Beides kann datenschutzrechtlich zu Problemen führen. Prüfen Sie daher im Vorfeld, ob der CDN-Provider Ihrer Wahl Ihnen vertraglich eine DSGVO-konforme Datenverarbeitung zusichert.

Dynamische Inhalte

Ein CDN ist auf die Auslieferung statischer Daten ausgelegt und bietet in Bezug auf die Performance und die Verfügbarkeit Ihrer Webanwendung viele Vorteile. Jedoch eignet sich ein CDN nicht zur Auslieferung dynamischer Inhalte, wie zum Beispiel Warenkörbe, die gerade im E-Commerce von besonderer Bedeutung sind.

Da diese Inhalte zum Teil nutzerabhängig sind und sich beständig verändern, sind sie nicht zum Laden aus dem Cache eines Replica-Servers geeignet. Eingehende Requests müssen in solchen Fällen an den Ursprungsserver weitergeleitet werden.

Hohe Kosten

Auch wenn ein geringerer Ressourcenbedarf in Bezug auf das Hosting zunächst verlockend klingen mag, sind mit der Inanspruchnahme von CDN-Diensten häufig hohe Kosten verbunden. Für kleinere Onlineshops mit geringerem Budget kann die Nutzung eines CDNs daher sehr kostspielig sein.

SEO

Zwar ist eine schnelle Ladezeit in Bezug auf das Suchmaschinenranking generell von Vorteil, allerdings birgt die Verwendung eines CDNs auch mögliche Fallstricke. Werden Optimierungen wie die Aktualisierung von Snippets vorgenommen, muss zunächst sichergestellt sein, dass die Änderungen auch vom Ursprungs- auf die Replica-Server übertragen wurden. Das geschieht im Normalfall automatisch, jedoch kann es dabei zu Verzögerungen kommen. Die Folge ist, dass Inhalte wie Bilder nach einer Änderung teilweise verspätet an den Endnutzer ausgeliefert werden. Das kann sich negativ auf das Suchmaschinenranking auswirken.

Risiko für Cyber-Angriffe

Die Architektur eines CDNs erhöht zwar die Sicherheit in Bezug auf DDoS-Attacken, bietet aufgrund der hohen Anzahl an Servern jedoch auch eine größere Angriffsfläche für kriminelle Hacker. Wenn Sie den Einsatz eines CDNs in Erwägung ziehen, sollten Sie mit der Auslagerung von sensiblen Daten daher sehr bedacht umgehen.

Andere Methoden der Performance-Optimierung

Um die Performance oder Verfügbarkeit eines Onlineshops zu verbessern, muss nicht zwangsläufig auf ein CDN zurückgegriffen werden. Obwohl sie sich in den meisten Fällen nicht gegenseitig ausschließen, stellen die folgenden Aspekte mögliche Alternativen zu einem CDN dar.

Anwendungsoptimierung

Falls es technisch kompatibel ist, sollten Sie Ihr Shopsystem mit einer der neueren PHP-Versionen betreiben. Mit neuen PHP-Releases gehen nämlich in den meisten Fällen auch deutliche Performance-Verbesserungen einher. Bei PHP 8.0 profitieren Sie beispielsweise von dem dort eingeführten JIT-Compiler. Auch die neueste Version PHP 8.1 verfügt über interessante neue Funktionen.

Mit effizientem Full-Page-Caching können Sie die Ladezeit Ihres Onlineshops drastisch reduzieren. Ein geeignetes Werkzeug dafür ist der HTTP-Cache-Proxy Varnish. Dieser wird vor einen Webserver geschaltet und liefert statische Inhalte aus dem Cache an den Client aus. Verwenden Sie mehrere Webserver, kann Varnish zudem als Load Balancer eingesetzt werden. Im verlinkten Blogbeitrag erfahren Sie wissenswerte Details zu Varnish.

Mittlere und größere Onlineshops können auch davon profitieren, den Cache und die Sessions vom Dateisystem in Redis zu verschieben. Wir haben in einer eigenständigen Blogreihe zusammengefasst, wie Onlineshops am meisten von Redis profitieren.

Webseitenkomprimierung

Verwenden Sie in Ihrem Onlineshop eine große Anzahl an Text- und Binärdateien wie Bilder oder Videos, können Sie diese verkleinern, um den Ressourcenbedarf bei der Übertragung zu reduzieren. Dazu gibt es verschiedene Methoden.

Während bei Textdateien einfach überflüssige Leerzeichen oder Zeilenumbrüche entfernt werden können, ist eine verlustfreie Komprimierung von Bilddateien etwas aufwendiger. Eine Möglichkeit besteht beispielsweise darin, Dateien in modernere Bildformate umzuwandeln.

Zudem können Sie Ihren Onlineshop auch mit dem gzip- oder dem Brotli-Modul komprimieren, um die Ladezeit zu reduzieren. Im hier verlinkten Beitrag stellen wir Ihnen verschiedene Methoden der Webseitenkomprimierung detailliert vor.

Fazit

Schnelle und standortunabhängige Auslieferung von Daten, globale Verfügbarkeit, geringerer Hardware-Bedarf: Die Nutzung eines Content Delivery Networks bringt für Shopbetreiber oft Vorteile mit sich, kann sich unter Umständen jedoch auch zu deren Nachteil erweisen.

Ob die Verwendung eines CDNs sinnvoll ist, hängt dabei von den individuellen Anforderungen des Onlineshops und der Qualität des technischen Setups ab. Im Zweifelsfall kann der Vergleich der Gesamtladezeit (inklusive Assets) mit und ohne CDN Aufschluss über mögliche Performance-Potenziale geben.

Größere Onlineshops, die international aufgestellt sind und über ein umfangreiches Produktsortiment verfügen, profitieren in der Regel am stärksten vom Einsatz eines CDNs. Kleinere Onlineshops mit einem regionalen Fokus und einem weniger großen Sortiment an Produkten erlangen möglicherweise größere Mehrwerte, wenn sie sich auf eine oder mehrere der Alternativen fokussieren. Die Optimierung der eigenen Webanwendung im Hinblick auf Performance ist oftmals deutlich kosteneffizienter und mit geringerem Aufwand möglich.

Für Kunden von maxcluster ist es in der Regel nicht notwendig, aus Gründen der Performance oder Verfügbarkeit ein CDN zu verwenden. Unser Tier III+ Rechenzentrum in Frankfurt am Main profitiert von der Nähe zum DE-CIX, dem weltweit größten Internet-Knoten. Daher sind Shops, die bei maxcluster gehostet sind, europaweit gut zu erreichen und auch die Verfügbarkeit in den USA ist im Regelfall gewährleistet.

Sollen jedoch Endkunden außerhalb Europas bedient werden oder bringt eine andere Funktion eines CDNs Shopbetreibern nennenswerte Vorteile, kann sich der Einsatz eines CDNs durchaus lohnen.

Sie sind auf der Suche nach einem kompetenten und zuverlässigen Hosting-Partner oder möchten mehr über die Managed Hosting Services bei maxcluster erfahren? Dann wenden Sie sich gerne telefonisch unter +49 5251 4141 350 oder per E-Mail unter beratung@maxcluster.de an unser Beratungs-Team.


Veröffentlicht am 23.02.2022 | DR