Laravel-Performance-Optimierung
Langsame Seiten, ein träger Admin-Bereich, Datenbankabfragen, die den Server auslasten, Queues, die hinterherhinken, oder Exporte, die abbrechen. Ich finde die Ursachen und behebe sie. Für Firmen ohne eigene Entwickler und für Teams, deren Entwickler an dem Problem festhängen.
KI gehört fest zu meiner Arbeit, und bei allem, was live geht, arbeite ich sorgfältig. Ich messe zuerst und behebe dann das größte Problem. So habe ich auch Anwendungen mit Hunderten von Millionen Datensätzen schnell gemacht. Laravel und Vue sind mein bevorzugter Stack. Ich arbeite von Deutschland aus.
Antwort innerhalb eines Werktags.
Wo Laravel-Anwendungen langsam werden
Die häufigsten Ursachen und was ich dagegen tue.
Datenbankabfragen
N+1-Abfragen, fehlende Indizes oder Abfragen, die eine ganze Tabelle laden, nur um sie zu zählen. Hier geht die meiste Zeit verloren, und hier ist die Korrektur am günstigsten. Meist helfen Eager Loading, die richtigen Indizes und besser geschriebene Abfragen.
Aufgaben im Hintergrund
E-Mails versenden, PDFs erzeugen, externe APIs aufrufen oder Reports erstellen. Solche Aufgaben laufen besser im Hintergrund, mit Queues und Horizon. Dann antwortet die Seite sofort.
Gezieltes Caching
Redis für Daten, die jeder Request braucht, gespeicherte Ergebnisse für aufwendige Seiten und HTTP-Caching. Falsch eingesetztes Caching erzeugt neue Fehler.
Reports und Exporte, die abbrechen
Große Exporte und Reports laufen als Jobs, geben ihre Daten schrittweise aus oder werden vorab berechnet. Statt eines Browser-Tabs, der ewig lädt, kommt am Ende ein Download-Link.
Suche
Wenn LIKE-Abfragen in der Datenbank der Engpass sind, hilft eine eigene Suchmaschine. Ich habe Meilisearch mit mehr als 200 Millionen Datensätzen betrieben, mit Antworten unter 50 Millisekunden.
Server und PHP
Einstellungen für PHP-FPM und OPcache, die Konfiguration der Datenbank, ein eigener Datenbankserver und Octane. Den Server nehme ich mir meist als Letztes vor.
So arbeite ich
Viele meiner Kunden kommen mit einer Idee, einem Repository, einem kurzen Video oder einer Liste von Problemen zu mir. Mehr braucht es am Anfang nicht. Ich sehe mir an, was vorhanden ist, mache daraus einen Plan und setze ihn um.
Mit Claude Code, Codex und eigenen Agent-Workflows lese ich mich in Code ein, plane Änderungen, schreibe Tests, refaktoriere und suche Fehler. Das ist kein Vibe Coding, sondern erfahrene Softwareentwicklung in deutlich höherem Tempo.
KI zuerst, und gemessen
Claude Code und Codex gehen Code und Datenbankabfragen viel schneller durch, als ich es von Hand könnte. Damit finde ich N+1-Abfragen und fehlendes Eager Loading. Ich messe vor und nach jeder Änderung.
Die Kontrolle bleibt bei mir
KI schreibt einen großen Teil meines Codes. Die technischen Entscheidungen treffe ich trotzdem selbst. Jede Änderung lese und teste ich, bevor sie live geht. So bin ich schnell und bleibe dabei sorgfältig.
So, wie es für den Kunden passt
Manche Kunden wollen jede Änderung sehen, bevor sie live geht, andere überlassen mir das Deployment. Manche möchten regelmäßig telefonieren, die meisten bekommen lieber schriftliche Updates. Ich arbeite gerne asynchron und stelle die wichtigen Fragen trotzdem, sobald sie auftauchen.
Mit dem Blick eines Unternehmers
Ich betreibe selbst mehrere Online-Angebote. Deshalb denke ich bei jedem Projekt Traffic, Conversion, Umsatz und Support mit, und ich sage offen, wenn sich etwas nicht lohnt.
So können wir zusammenarbeiten
Zum Festpreis, als monatliche Pauschale oder nach Stunden. In jedem Fall arbeite ich persönlich am Projekt, ohne Agentur dazwischen. Wenn noch unklar ist, welches Modell passt, reicht eine kurze Beschreibung des Projekts. Ich schlage dann eines vor.
Beispiele aus meiner Arbeit
Performance-Projekte der letzten Jahre.
200 Millionen Datensätze, Antworten unter 50 Millisekunden
Eine Suchplattform über mehr als 200 Millionen Datensätze, die sofort antworten und Tippfehler verzeihen musste. Umgesetzt mit Laravel und Meilisearch, mit Caching auf mehreren Ebenen, auf mehreren Servern und mit einer API für Partner.
Langsame Website, wichtigster Vertriebskanal
Ein laufender Retainer für ein Unternehmen, dessen Kunden über die Website kommen. Zuerst habe ich die Engpässe gefunden und behoben. Danach kam ein Upgrade auf die aktuelle Laravel-Version.
Performance und aufwendiges Reporting
Performance-Arbeit an einer großen Laravel-Lernplattform. Dazu ein eigenes Reporting mit einstellbaren Spalten. Die Exporte laufen im Hintergrund und brechen nicht mehr im Browser ab.
Das sagen meine Kunden
"He's tackled some major technical challenges for us, notably significantly improving our website's performance."
"He worked on performance optimization, customer-specific features, and a major custom reporting system."
"We especially value how quickly he gets into mature projects and finds solutions that fit the existing state of the codebase. Absolutely recommended."
Fragen und Antworten
Wie wird herausgefunden, was langsam ist?
Ich messe, bevor ich etwas ändere. Dafür nutze ich Logs, das Log der langsamen Datenbankabfragen, Telescope oder Debugbar und die Zahlen der Queues. Dann behebe ich das größte Problem und messe erneut.
Braucht es einen größeren Server?
Meistens nicht. Die meisten Probleme liegen in den Datenbankabfragen, in fehlenden Indizes, in Aufgaben, die in den Hintergrund gehören, oder in fehlendem Caching. Einen größeren Server gibt es erst ganz am Ende, wenn überhaupt.
Geht das, ohne die Funktionsweise der Anwendung zu ändern?
In den meisten Fällen ja. Die Nutzer sollen nur merken, dass alles schneller geht.
Liegt es an der Datenbank oder am Code?
Meistens am Code, weil er die Datenbank ungünstig abfragt. Deshalb korrigiere ich meist den Code und lege manchmal einen Index in der Datenbank an.
Gehört auch die Skalierung auf mehrere Server dazu?
Ja. Wenn ein Server nicht mehr reicht, richte ich Queues, Caching und Datenbanken für mehrere Server ein. Dafür gibt es eine eigene Seite zur Skalierung.
Wie wird abgerechnet?
Zum Festpreis, wenn das Ziel klar ist, als monatliche Pauschale für laufende Arbeit oder nach Stunden. Ein paar Sätze zum Vorhaben genügen, dann schlage ich ein Modell vor.
Projekt anfragen
Was langsam ist, seit wann, und wie viele Daten und wie viel Traffic die Anwendung ungefähr hat. Ein paar Sätze genügen. In meiner Antwort steht, was ich mir zuerst ansehen würde und was es kostet.
Lieber kurz telefonieren? 30 Minuten buchen.