Fallstudie KI & SaaS

Unser Transkriptions-SaaS in sieben Tagen von Rails auf Rust, ohne dass jemand abgemeldet wurde

SoundScript.AI verwandelt Audio in Text in 99 Sprachen. Die Rails-Anwendung betrieb Website, Hintergrundjobs und Redis auf einem kleinen Server und stieß an ihre Grenzen. Wir haben sie in Rust neu geschrieben, Seite für Seite gegen die alte Anwendung geprüft und die Produktion in einem Fenster von etwa vier Minuten umgestellt.

Kunde
Envixo
Plattform
Web-App und Mobile-API
Branche
KI & SaaS
Gestartet
2026

Die Herausforderung

Die Rails-8.1-Anwendung funktionierte, aber Puma, Sidekiq, Redis und PostgreSQL teilten einen Server mit 1.9 GB Speicher. Unter Last brauchten Seiten Sekunden, und im Juli 2026 standen die Hintergrundjobs fünf Tage still.

Vorher: Puma, Sidekiq, Redis und PostgreSQL auf einem Server mit 1.9 GB Speicher
Nachher: Web- und Worker-Dienste auf Kubernetes mit verwaltetem PostgreSQL 18 und ohne Redis: Warteschlangen, Live-Updates und Rate Limits laufen auf PostgreSQL
Vorher: Ein Median von 2.7 s auf öffentlichen Seiten bei 100 gleichzeitigen Verbindungen
Nachher: Ein Median von 11.7 ms im gleichen Test
Vorher: PDF-Exporte, unlesbar in arabischer, hebräischer, persischer, Urdu- und Devanagari-Schrift
Nachher: PDFs mit Typst und Noto-Schriften gesetzt, mit korrekter Formung und Text von rechts nach links
Vorher: Zahlungs- und Transkriptions-Webhooks, die unsignierte Ereignisse annahmen, wenn ein Secret fehlte
Nachher: Jede Webhook-Signatur wird geprüft, immer
Vorher: 937 MB Speicher in der Spitze
Nachher: 102 MB Speicher in der Spitze

Was wir gebaut haben

Eine komplette Neuentwicklung des Produkts, kein Prototyp: die Website in 99 Sprachen, die Transkriptions-Pipeline, KI-Zusammenfassungen und Chat, Exporte, Abrechnung, die Mobile-API und die Verwaltungskonsole.

Gleiche URLs und Schnittstellen

Jede lokalisierte Seite, jeder Webhook-Pfad, jeder Endpunkt der Mobile-API und jeder Storage-Bucket blieben gleich, sodass Links, Apps und Integrationen weiter funktionierten.

Niemand wurde abgemeldet

Die Rust-Anwendung liest das Session-Cookie von Rails und die bestehenden Passwort-Hashes, sodass Nutzer über die Umstellung hinweg angemeldet blieben.

Daten geprüft, nicht angenommen

Nach der letzten Kopie wurden Zeilenzahlen und Prüfsummen von Konten, Transkripten, Nutzung und Abonnements zwischen alter und neuer Datenbank verglichen: identisch.

Ein Prüfstand für Parität

1,126 Seitenaufrufe über 11 Nutzerarten und vier Sprachen, 39 Formularabsendungen und 343 Verwaltungsanfragen wurden gegen beide Anwendungen abgespielt und verglichen.

Das ganze Produkt

Transkription mit Whisper und Azure, Live-Status, KI-Zusammenfassung und Chat, Exporte als TXT, SRT, DOCX und PDF, Abrechnung über Stripe und Google Play sowie eine Verwaltungskonsole.

Ein sicherer Weg zurück

Der alte Server blieb nach der Umstellung zwei Wochen unangetastet, sodass ein Rollback eine DNS-Änderung war.

Technische Ergebnisse

In einem Lasttest vor dem Start auf einer gemeinsam genutzten Maschine gemessen: die absoluten Zahlen sind Richtwerte, die Verhältnisse gelten.

230x
Schnellere mittlere Antwortzeit unter Last
9x
Weniger Speicher in der Spitze
880
Automatisierte Tests bei jeder Änderung
7
Tage vom ersten Commit bis in Produktion
  • Produktion in einem Fenster von etwa vier Minuten umgestellt
  • Registrierung, Upload, Live-Status, Downloads, KI, API und Verwaltung nach der Umstellung in Produktion geprüft
  • Der Lasttest fand einen Fehler im Connection Pool, behoben vor dem Start
  • 99 Sprachen, einschließlich PDFs von rechts nach links

Technologie

  • Rust
  • axum
  • PostgreSQL
  • Typst
  • OpenAI Whisper
  • Azure Speech
  • Stripe
  • Kubernetes

Sie brauchen Software, die zu Ihrem Geschäft passt?

Integrationen, interne Tools, Apps und Plattformen, auf Bestellung gebaut von Senior-Engineers, die KI-Agenten steuern. Sagen Sie uns, was Sie brauchen, und wir zeigen Ihnen, wie wir es bauen würden.