Performance 22. Januar 2025 8–10 Min. Lesezeit

CDN-Strategien 2024: Globale Performance für deutsche Websites

So wählen Sie das richtige CDN-Setup zwischen Kosten, Compliance und Geschwindigkeit – mit Best Practices für Cache-Hit-Rates, Security und Observability.

Vergleich: Cloudflare vs. CloudFront vs. Eigenes CDN

Kriterium Cloudflare CloudFront Eigenes
Setup Sehr schnell (DNS/Proxy) AWS-nativ, IaC-freundlich Komplex (Anycast, PoPs)
Kosten Planbasiert + Add-ons Nutzungsbasiert/Region CapEx + Ops
Edge-Compute Workers/Pages/Queues Lambda@Edge/Functions Eigene Runtime
Security WAF, DDoS, Bot-Mgmt stark AWS WAF, Shield, IAM Eigenes Hardening
DSGVO/Regionen Geo-Routing/Datensparsam Region-Scopes/Logs EU Volle Kontrolle

Caching-Strategien (Hit-Rate ↑, Origin-Load ↓)

  • Trennung statisch/dynamisch: eigene Routen, Header und TTLs.
  • Cache-Keys definieren: Sprache (Accept-Language), Geo, Device (DPR) nur wenn nötig in Vary.
  • Stale-While-Revalidate/If-Error: Zero-Downtime-Updates, robust bei Origin-Spikes.
  • Origin Shield: Ein zwischengeschalteter „Super-Cache“ verhindert Miss-Stürme.
  • Surrogate-Keys/Tags: gezielte Invalidierung (z. B. pro Kategorie).
  • Bild-CDN: AVIF/WebP, Resizing am Edge, Accept & DPR nutzen.

Praxis: Header & Edge-Logik (Snippets)

# Nginx (Origin): sinnvolle Cache-Header
                            location /assets/ {
                            add_header Cache-Control "public, max-age=31536000, immutable";
                            }
                            location /api/ {
                            add_header Cache-Control "private, max-age=0, no-store";
                            }
                            location /page/ {
                            add_header Cache-Control "public, s-maxage=600, stale-while-revalidate=60, stale-if-error=600";
                            }

                            # Cloudflare Workers (vereinfachtes Beispiel)
                            export default {
                            async fetch(req, env, ctx) {
                                const url = new URL(req.url);
                                if (url.pathname.startsWith("/page/")) {
                                const cacheKey = new Request(req.url, { headers: { "Accept-Language": req.headers.get("Accept-Language") || "" }});
                                const cache = caches.default;
                                let res = await cache.match(cacheKey);
                                if (!res) {
                                    res = await fetch(req);
                                    res = new Response(res.body, res);
                                    res.headers.set("Cache-Control","public, s-maxage=600, stale-while-revalidate=60");
                                    ctx.waitUntil(cache.put(cacheKey, res.clone()));
                                }
                                return res;
                                }
                                return fetch(req);
                            }
                            }

                            # CloudFront Functions (Header normalisieren)
                            function handler(event) {
                            var req = event.request;
                            // Nur relevante Accept-Language behalten (z. B. de, en)
                            if (req.headers["accept-language"]) {
                                var lang = req.headers["accept-language"].value;
                                req.headers["accept-language"].value = lang.split(",").filter(l => /^(de|en)/.test(l)).join(",");
                            }
                            return req;
                            }

Security, Protokolle & DSGVO

  • HTTP/3 (QUIC): bessere Latenz bei Mobil-Netzen, 0-RTT-Resumption vorsichtig konfigurieren.
  • WAF & Bot-Management: bekannte Patterns blocken, Anomalien rate-limiten.
  • mTLS/Signierte URLs: für private Assets, kurzlebige Token/Signaturen.
  • Datensparsamkeit: keine personenbezogenen Header in Cache-Keys; EU-Regionen nutzen, AV-Verträge prüfen.

Monitoring & Budgets

  • Edge-Metriken: Cache-Hit-Rate, Origin-Fetches, Error-Rates, TTFB per Region.
  • Web Vitals RUM: LCP/INP/CLS nach Land/ISP/PoP segmentieren.
  • Budgets: Bytes pro Route, 3rd-Party-Skripte, Bildgrößen, TLS-Handshake-Zeit.
  • Alerting: bei Hit-Rate-Drop, 5xx-Spikes, Kosten-Anomalien.

Empfehlung nach Szenario

Szenario Empfehlung
Klassische Website/Headless CMS Cloudflare (Pages/Workers + WAF) oder CloudFront (S3/ALB)
E-Com mit dynamischem Pricing Edge-Compute für Cache-Key/ESI, Stale-While-Revalidate, Origin Shield
Strenge Compliance/On-Prem Eigenes CDN/Regional CDNs + strikte Datensparsamkeit

CDN-Konzept benötigt?

Wir planen Ihr Setup inkl. WAF, Edge-Compute, Performance-Budgets und Monitoring – messbar und DSGVO-konform.

Häufige Fragen (FAQ)

Wann lohnt sich Cloudflare gegenüber AWS CloudFront?
Cloudflare: schnelles Onboarding, sehr starke WAF/Bot-Features, globaler Footprint. CloudFront: perfekt im AWS-Stack, tiefe IAM-Kontrolle, Region-Schwerpunkte.
Wie bleibt ein CDN DSGVO-konform?
Datenminimierung, EU-Regionen/Geo-Routing, keine personenbezogenen Header cachen, AV-Verträge & TOMs, Logging/Retention begrenzen.
Wie verhindere ich Cache-Miss-Stürme?
Stale-While-Revalidate, Origin Shield, Request-Koalescing, Warmup-Jobs, lange TTLs für schwere Routen.
Welche Header sind entscheidend?
Cache-Control, ETag/Last-Modified, Vary (nur gezielt), Content-Type/Encoding; für Bilder zusätzlich Accept/DPR.