Background Decoration
31.8.2026Dietrich Bojko13 Min. Lesezeit

Core Web Vitals & PageSpeed

Zurück zur Übersicht
Core Web Vitals & PageSpeed
Bild mit KI generiert.
Bild mit KI generiert.
2 Views

Häufig gestellte Fragen (FAQ)

Dieses Problem tritt fast immer durch dynamische String-Konkatenation in React auf (z. B. className=bg-${color}-500}). Der Tailwind-Compiler führt dein JavaScript nicht aus, sondern sucht beim Purging nur nach vollständigen Strings. Wenn der komplette Klassenname (z. B. bg-blue-500) nirgendwo im Code steht, wird er aus der finalen CSS-Datei gelöscht. Die Lösung: Verwende immer vollständige Klassennamen oder trage dynamische CMS-Werte in die safelist der tailwind.config.ts ein.

Der INP-Wert (Interaction to Next Paint) misst die gesamte Zeit vom Klick bis zur visuellen Rückmeldung des Browsers. Oft reagiert das Banner selbst schnell, feuert aber direkt beim Klick auf "Akzeptieren" eine Flut an schweren Tracking-Skripten (Google Analytics, Meta Pixel) ab. Diese Skripte blockieren den Main Thread in sogenannten "Long Tasks" (über 50ms). Du musst das Laden dieser Skripte entkoppeln (Yielding), beispielsweise über setTimeout oder requestIdleCallback, damit der Browser zwischenzeitlich rendern kann.

Die TTFB ist zwar keine direkte CWV-Metrik, bildet aber das Fundament für den LCP. Wenn dein Server (oder dein Laravel-Backend) zu lange braucht, um das initiale HTML oder das JSON auszuliefern (z. B. Werte > 800ms), verzögert sich der gesamte restliche Ladevorgang massiv. Genau deshalb setzen wir im Headless-Setup auf serverseitiges Caching (Redis), aggressive Cache-Header (max-age=31536000) für statische Assets und CDN-Infrastrukturen.

Dein nächster Schritt: Phase 5 – Server-Setup & Docker in Produktion

Unsere Architektur steht, das Backend ist sicher, das Next.js-Frontend lädt am Limit der physikalischen Möglichkeiten und das semantische SEO ist fehlerfrei. Doch das beste Headless-System nützt nichts, wenn es nur auf deinem lokalen Rechner (localhost) funktioniert. Ein Projekt ist erst dann abgeschlossen, wenn es sicher, stabil und hochverfügbar im öffentlichen Netz läuft.

Mit dem Start der finalen Phase 5: Deployment & Betrieb verlassen wir unsere lokale Entwicklungsumgebung. Im kommenden Teil 15: Server-Setup & Docker in Produktion legen wir das professionelle Fundament für den Live-Betrieb:

  • vServer Vorbereitung (Ubuntu LTS): Wir starten mit einem nackten Linux-Server. Du lernst die essenziellen Schritte zur Server-Härtung, der Einrichtung sicherer SSH-Verbindungen und der Konfiguration einer wasserdichten Firewall.

  • Docker für den Live-Betrieb: Was lokal perfekt funktioniert, braucht in Produktion besondere Aufmerksamkeit. Wir installieren die Docker-Engine für Server-Umgebungen und orchestrieren unsere Container so, dass sie bei Ausfällen automatisch neu starten, Log-Dateien nicht die Festplatte sprengen und Systemressourcen optimal genutzt werden.

  • MySQL-Tuning: Standard-Konfigurationen von Datenbanken bremsen unter echter Last schnell ein. Wir optimieren die Parameter unserer MySQL/MariaDB-Instanz gezielt für die hohe Lese-Last unserer Headless-API, um Flaschenhälse (Bottlenecks) bei Traffic-Spitzen proaktiv zu verhindern.

Jetzt starten: Teil 15 – Server-Setup & Docker in Produktion

Dietrich Bojko
Über den Autor

Dietrich Bojko

Senior Webentwickler

Webinteger arbeitet seit vielen Jahren produktiv mit Linux-basierten Entwicklungsumgebungen unter Windows.
Der Fokus liegt auf performanten Setups mit WSL 2, Docker, PHP, Node.js und modernen Build-Tools in realen Projekten – nicht auf theoretischen Beispielkonfigurationen.

Die Artikel dieser Serie entstehen direkt aus dem täglichen Einsatz in Kunden- und Eigenprojekten und dokumentieren bewusst auch typische Fehler, Engpässe und bewährte Workarounds.

Webseite besuchen

Das könnte Sie auch interessieren

Schreiben Sie einen Kommentar