
Eine mit „Vibe-Coding“ programmierte App fühlt sich am Tag der Veröffentlichung oft schon fertig an. Dann kommen echte Nutzer hinzu, die Datenmenge wächst, und eine Seite, die zuvor sofort geladen wurde, fängt an zu ruckeln. Dieser Moment wirft die Frage auf, um die es in diesem Blog geht.
„Vibe-Programmieren“ bedeutet, Software zu programmieren, indem man einem KI-Tool beschreibt, was man will, und den von ihm geschriebenen Code akzeptiert – oft, ohne ihn Zeile für Zeile zu überprüfen. Andrej Karpathy prägte den Begriff im Februar 2025.
Ja, die meisten mit „Vibe-Coding“ programmierten Apps sind skalierbar. Sie haben selten Probleme, nur weil sie von einer KI programmiert wurden. Sie stoßen auf dieselben Engpässe wie jede andere App auch, und „Vibe-Coding“ erhöht die Wahrscheinlichkeit dieser Engpässe, da niemand die Muster überprüft hat. Die Probleme treten in der Regel in dieser Reihenfolge auf:
Für die meisten dieser Probleme gibt es gezielte Lösungen. Eine komplette Neuprogrammierung ist selten der erste Schritt.
KI-Tools programmieren, und das Programm funktioniert mit den Daten, die ihnen vorliegen. Eine Testdatenbank mit 50 Zeilen verschleiert Probleme, die erst bei 500.000 Zeilen auftreten. Die meisten Probleme werden durch dieselben wenigen Muster verursacht:
Keines dieser Muster ist spezifisch für KI. Ein menschlicher Entwickler kann sie alle programmieren. Der Unterschied ist, dass eine Person den Code oft vor der Veröffentlichung überprüft, während eine „Vibe-codierte“ App möglicherweise ohne diese Überprüfung veröffentlicht wird. Was die Sicherheitsaspekte desselben Problems angeht, lies dir den Leitfaden zur Bereitstellung in der Produktivumgebung einer „Vibe-codierten“ App durch.
Skalierung ist kein einzelnes Ereignis. Es ist eine Abfolge von „ersten Malen“, und jedes davon deckt eine andere Schwachstelle auf. Die Tabelle fasst die übliche Reihenfolge zusammen.
Phase | Was geht schief | Wie du es bemerkst | Erste Lösung |
| Erste echte Nutzer | Datenzugriff und -wiederherstellung | Ein Nutzer sieht Daten, die ihm nicht gehören, oder Daten gehen verloren | Zugriffsregeln testen und ein backup wiederherstellen |
| Erster Traffic-Anstieg | Abfragen und Verbindungen | Seiten werden langsamer oder es treten Verbindungsfehler auf | Füge Indizes hinzu, nutze Verbindungspools und den Cache |
| Erste zahlende Kunden | Zuverlässigkeit | Kunden melden Ausfälle, bevor du sie bemerkst | Verlagere rechenintensive Aufgaben in Hintergrundjobs und richte Warnmeldungen ein |
| Erste Abrechnung für KI-Features | Modellkosten und Ratenbegrenzungen | Die API-Rechnung steigt sprunghaft an oder Anfragen werden abgelehnt | Lege Limits pro Nutzer fest und speichere Antworten im Cache |
| Erster Teamkollege | Sichere Änderungen | Neue Änderungen führen dazu, dass bisher funktionierende Features nicht mehr funktionieren | Füge Code-Review- und Preview-Umgebungen hinzu |
| Erster Unternehmenskunde | Compliance | Ein Sicherheitsfragebogen, den du nicht beantworten kannst | Audit-Trails hinzufügen und einen zertifizierten Host auswählen |
1. Erste echte Nutzer: Sind deine Daten sicher?
Echte Nutzer bringen echte Daten mit, und Fehler wirken sich nun auf echte Menschen aus. Teste jede Zugriffsregel, indem du dich als zweiter Nutzer anmeldest und versuchst, die Daten des ersten Nutzers einzusehen. Plane dann backups ein und stelle eines wieder her, denn ein ungetestetes Backup könnte versagen, wenn du es brauchst.
2. Erster Traffic-Anstieg: Warum werden die Seiten langsamer?
Langsame Seiten sind meist auf die Datenbank zurückzuführen, nicht auf den Server. Supabases eigene Tests zeigen, wie groß die Verbesserungen sein können. Das Hinzufügen eines Indexes zu der in einer Zugriffsregel verwendeten Spalte verkürzte eine Abfrage von 171 ms auf unter 0,1 ms. Das Umschreiben von auth.uid() als (select auth.uid()) in einer Richtlinie verkürzte eine weitere von 179 ms auf 9 ms.
Verbindungen sind die zweite Einschränkung. Jede Datenbank akzeptiert eine feste Anzahl von Verbindungen. Serverlose Funktionen können viele kurzlebige Verbindungen gleichzeitig öffnen, daher empfiehlt Supabase hierfür einen Connection-Pooler.
3. Erste zahlende Kunden: Wirst du merken, wenn etwas nicht funktioniert?
Zahlende Kunden erwarten, dass die App funktioniert, und bemerken Ausfälle schnell. Verlagere E-Mails, Dateiverarbeitung und KI-Aufrufe aus den Webanfragen in Hintergrundjobs, damit eine langsame Aufgabe den Nutzer nicht blockiert. Füge dann Fehlerwarnungen hinzu, die eine Person erreichen, damit du von Ausfällen erfährst, bevor die Kunden davon erfahren.
4. Erste Rechnung für KI-Features: Was kostet jeder Nutzer?
Wenn deine App eine Modell-API aufruft, verursacht jeder aktive Nutzer Kosten. Intensivnutzer können weitaus mehr kosten als Gelegenheitsnutzer. Lege ein Nutzungslimit pro Nutzer fest, speichere Antworten auf wiederkehrende Fragen im Cache und verwende ein kleineres Modell, sofern die Qualität dies zulässt. Verfolge die Kosten pro Nutzer, nicht nur die monatliche Gesamtsumme.
5. Erster Teamkollege: Kannst du die App sicher ändern?
Eine Person kann die gesamte App im Kopf behalten. Zwei Personen können das nicht. Führe Code-Reviews durch, führe automatisierte Tests aus und teste jede Änderung vor der Veröffentlichung in einer Testumgebung. Die gleichen Regeln gelten, wenn KI-Agenten den Code programmieren; Tools wie Upsun Dispatch fügen dieser Arbeit Schritte zur menschlichen Freigabe hinzu.
6. Erster Unternehmenskunde: Kannst du nachweisen, dass die App sicher ist?
Größere Kunden schicken Sicherheitsfragebögen. Sie fragen, wo Daten gespeichert werden, wer darauf zugreifen kann und wie Änderungen genehmigt werden. Um diese Fragen zu beantworten, braucht es Prüfpfade, klare Datenstandorte und einen Host mit anerkannten Zertifizierungen.
Normalerweise nicht. Die meisten Skalierungsprobleme liegen in wenigen Abfragen, Einstellungen oder Funktionen, und diese zu beheben ist schneller und sicherer, als von vorne anzufangen. Nutze die folgenden Anhaltspunkte, um zu entscheiden.
Vorgehensweise | Wähle diesen Ansatz, wenn | Typische Aufgaben |
| Vor-Ort-Korrektur | Bestimmte Seiten oder Abfragen sind langsam, aber die Struktur ist solide | Füge Indizes, Pooling, Caching und Hintergrundaufträge hinzu |
| Einen Teil umgestalten | Ein Bereich, wie z. B. die Abrechnung oder die Dateiverwaltung, stürzt immer wieder ab | Schreib dieses Modul mit Tests neu und lass den Rest so, wie er ist |
| Neu erstellen | Das Datenmodell ist falsch, oder jede Änderung verursacht einen neuen Fehler | Plane eine neue Version und migriere die Daten schrittweise |
Sei vorsichtig bei Ratschlägen, die direkt auf eine Neuprogrammierung hinauslaufen. Eine Neuprogrammierung dauert Monate, und die neue Version kann ohne gute Tests dieselben Fehler wiederholen. Beginne mit der Korrektur, die den aktuellen Engpass beseitigt, und messe dann erneut.
Du findest die Grenzen heraus, indem du mit realistischem Datenverkehr und realistischen Daten testest. Drei Schritte decken die meisten Apps ab:
Der erste Schritt ist oft der schwierigste, denn das Kopieren von Produktionsdaten in eine Testumgebung ist aufwendig. Manche Plattformen automatisieren das. Bei Upsun Cloud kann jeder Git-Zweig eine Vorschauumgebung erhalten, die Produktions-Apps, Dienste und Daten klont, sodass ein Lasttest mit demselben Datenvolumen durchgeführt wird, das die Nutzer erzeugen.
Upsun Cloud eignet sich für Apps, die in einer lockeren Atmosphäre programmiert wurden, aus einer einfachen Konfiguration herausgewachsen sind und nun kontrolliert skalieren müssen. Es hilft in mehreren der oben genannten Phasen:
Für eine kleine statische App reicht ein einfacherer Host aus. Der Vergleich von Hosting-Plattformen für „Vibe“-programmierte Apps erklärt, wann welche Option geeignet ist.
Was ist Vibe-Programmieren?
Vibe-Programmieren bedeutet, Software zu programmieren, indem man einem KI-Tool beschreibt, was man möchte, und den von ihm erzeugten Code übernimmt. Tools wie Lovable, Bolt, Replit, v0, Cursor und Claude Code werden dafür häufig verwendet.
Kann eine Lovable-App Tausende von Nutzern bewältigen?
Ja, wenn die Datenbank dafür ausgelegt ist. Lovable-Apps speichern Daten in einem Supabase-basierten Backend, daher hängt die Kapazität hauptsächlich von Indizes, Zugriffsregeln und dem Datenbank-Tarif ab. Teste vor einem Launch oder einer Kampagne mit Daten in Produktionsgröße.
Lässt sich Supabase skalieren?
Supabase läuft auf PostgreSQL, das große Arbeitslasten gut bewältigt. Die Skalierung einer Supabase-App bedeutet in der Regel, Abfragen und Zugriffsregeln zu optimieren, einen Connection-Pooler zu nutzen und bei Bedarf auf eine größere Recheninstanz umzusteigen.
Ist KI-generiertes Programmieren langsamer als menschliches Programmieren?
Nicht grundsätzlich. Das Risiko liegt in der Qualität, nicht in der Geschwindigkeit. Eine CodeRabbit-Analyse von 470 Pull-Requests ergab etwa 1,7-mal mehr Probleme in KI-geschriebenem Code, und Probleme mit der Performance sind eine Art dieser Probleme.
Wie viel kostet es, eine mit Vibe programmierte App zu skalieren?
Die Kosten hängen vom Datenverkehr, der Datenmenge und der KI-Nutzung ab. Die größten Kostensteigerungen entstehen meist durch die Datenbankkapazität und API-Aufrufe des Modells. Bei Plattformen mit ressourcenbasierter Preisgestaltung zahlst du nur für die Ressourcen, die die einzelnen Teile der App tatsächlich verbrauchen.
Wann sollte ich einen Entwickler hinzuziehen?
Hol dir einen Entwickler dazu, wenn dasselbe Problem nach mehreren Korrekturen immer wieder auftritt, wenn die App Zahlungen oder personenbezogene Daten verarbeitet oder bevor du einen Großkunden unter Vertrag nimmst.
Kann ich nach dem Launch weiterhin „Vibe-Programmieren“ durchführen?
Ja. Nutze weiterhin KI-Tools, füge aber Code-Reviews, automatisierte Tests und Preview-Umgebungen hinzu, damit jede Änderung überprüft wird, bevor die Nutzer sie sehen.